4
7

More than 5 years have passed since last update.

公式チュートリアルよりわかりやすいBottleの説明【@route】

Last updated at Posted at 2019-02-26

公式チュートリアル(英語)よりわかりやすいPythonのwebフレームワークbottleの解説

強気に行きます。
半分忘備録、半分共有したい思いで書いてます。
この記事はいろいろな記事を見て、

「Bottle動いた!」
「これだけで動くなんてすげえ!」

…知りたいのはそこじゃなくて具体的な使い方なんだよ!!!!
ってなった人に対する記事です。

私自体がいろいろな言語を触るも仕事では一切使いませんし、何だったら今はpythonはおろかVBAともほとんど縁がない仕事しています。
そんな人間がBottleをつかってwebアプリ?を作ろうともがく記事です。

対象と筆者のレベル

対象:ちゃんと意味が分かりながら触りたい人向け
著者のレベル(全般):実務経験なし。基本情報、応用情報合格。
筆者のレベル(コーディング):読めって言われたら定義とかループとかならわかるけど、それ以上は…といった感じ。
筆者の特徴:学校の先生ができる(しているとはいっていない)ので、教えるほうにスキルポイント振ってます

bottleのインストール

これはほかの記事を見て頑張ってください。私はpycharmを使っているので、設定からインタープリターを+し、bottleと検索して使えるようになりました。

bottleのhello worldと@route の使い方

要約:「@route('/○○/')のurlがリクエストされたら以下を返すよ!」

初投稿(2019/02/26)時点ではこれ以外のことはしっかりマニュアル読まないとわからないレベルでした。

便利なことは
@route('/') ←これが最小単位
@route('/○○/')←色々足していける。urlでよく見る感じ
 ・・・・・・・
としておけば、あれとこれとそれの時に実行するという風にできることです。同じことをたくさん書かなくていいのでとても便利で好き。ほかの言語もこういうことできるんでしょうねきっと。

bottleのhello world

helloworld.py
from bottle import route, run

@route('/')#今回は一番簡単な奴
def hibottle():#関数名なんてなんでもよい
    return "so easy! :)"#ここの文面が出てくる

run(host='localhost',port=8080,debug=True)

190e4dbe791981fb5ec9c96acfce579c.png

実行してからhttp://localhost:8080/にアクセスするとhello world成功です。

この段階ではファイル名なんてなんでもよいです。run(○○)はローカルサーバーを立てるおまじないなので、特に気にしないで大丈夫です。ここでエラーが出る時はそもそもbottleが入っていないか、ポートが悪いことが多そうです。8080がなんたらっていう記事を探しましょう。

もうすこし遊びたい奴のhello world

helloworld2.py
from bottle import route, run

@route('/')#今回は一番簡単な奴
@route('/hi/')#hiでも同じものが出る
def hibottle():#関数名なんてなんでもよい
    return "so easy! :)"#ここの文面が出てくる

@route('/hi/im/gosu/')
def imnotgosu():#関数名なんてなんでもよい
    return "support is so easy dude? :)"#わかるひとにはわかる

run(host='localhost',port=8080,debug=True)

route1.jpg

実行して出てきたページからurl末尾を '/'→'/hi/im/gosu/' にする(http://localhost:8080/hi/im/gosu/にアクセスする)と2つ目に設定した文字が出てきます。また '/hi/' も設定してある(こちらは1つ目)のでページが表示されますが、 '/hi/im/' は設定をしていないので、404 Notfoundでエラーになります。

これ弄っているだけで個人的にはまあまあ楽しいです。

今後の更新予定

【@route】Part.2⇒ワイルドカード(@routeのなかにある<name>的なあいつ)について
【template】⇒使えたらhtmlだけのページをブラウザに表示することができます。
【static_file】⇒templateと併用するとcssや画像付きのページをブラウザに表示することができます。

4
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
7