タダスケのIT備忘録

IT系の個人的備忘録。法律事務所勤務。

pythonanywhereを試してみた

herokuより使いやすくてびっくり!

ormのdatasetも最初から入っている。

これまで検討したサービス

サービス名 検討
xfree(旧xdomain) pythonが使えない,ftpを使う
xrea pythonは使えるが,pip installはできない。cgiは使えるが……
heroku スリープする
GCP? 学習コストが高いかも

ネックは,3か月に1回,設定画面でボタンを押さないと消されるらしい

DB接続テスト

参考サイト

blog.codecamp.jp

dataset公式サイト
dataset.readthedocs.io

Webタブで,フレームワークでflaskを選択

Mysqlのコンソールで適当にデータを入れる

create table test(id int auto_increment primary key,text text);
insert into test (text) values ('hoge');

Dashboardタブ > ConsolesのBashのところで,vim/home/yaguchineko/mysiteにあるflaskアプリのファイルを編集する。
datasetを使ってDBのデータを表示させるテストをする。

# A very simple Flask Hello World app for you to get started with...

from flask import Flask
import dataset

app = Flask(__name__)

@app.route('/')
def hello_world():
    #return 'Hello from Flask'
    #db = dataset.connect('mysql://user:password@localhost/mydatabase')#DB接続のサンプル
    db = dataset.connect('mysql://usrname:password@Database host address/database's name
    mylist = []
    for row in db['test']:#1行ずつ取得
        mylist.append(row['text'])
    return mylist[0]  

これで,「hoge」の表示に成功

アプリを1つしか作れないこともネックなので,

/app1/hogehoge
/app2/foo
…

という形で,無理やり複数アプリを作ってルーティングしようと考えている