【Python】Python Webフレームワーク総合スレ
flaskって遅いのか
小さそうだから速いんだとおもてた
web2py触ってみたけど好き嫌い分かれそう
簡単にサイト公開したい人にはいいんだろうけど
自分には縛り厳しすぎて無理だった
複数のドメインを設定しているVPSで
www.hogehoge.comと
www.hagehage.comだけに
Flaskを使いたい場合、
PythonとFlaskは該当ドメインのドキュメントルートではなく、VPS自体のトップにインストールすればいいのでしょうか?
http.confのvirtualhostの他に設定すべき項目はありますか?
大変お手数ですが、ご回答よろしくお願いいたします。
FlaskとDjangoしか触ったことないけど、データベース使うとなるとFlaskはめんどいので今のところDjangoしかメインで使ってない。
pyramidが気になってるんだけど、使用感としてはどうですか?
pyramidでなんか作ってるひといる?
10 :
nobodyさん:2012/05/11(金) 02:10:57.13 ID:HFuhYndS
>>3 のベンチマークを見ると
データベースと連携したサイトを作るにはFlaskがいいような気がするんだけど、
データベースを使うならFlaskは使うなって書いてるブログもいくつかある。
結局どっちなんだろう?
FlaskでDB使うなって言ってるのはORマッパーが標準装備じゃないとか自動化されてないとかそんな理由かな。
効率的なSQLを書けるならORマッパー経由よりもパフォーマンスがいいし、FlaskでDB使うメリットもある。
実際、
>>3のベンチマークでFlaskはPython組み込みのsqlite3ドライバ使ってるから早いんだと思う。
ギャグで作ったフレームワークとか使い物になるの?
13 :
nobodyさん:2012/05/30(水) 10:51:52.36 ID:Ud6iajOQ
初心者だけど、web2pyから抜け出せそうにない・・・
フォームとかのカスタムが面倒くさいけど、それ以上にDjango自体がやっかいに見える
やっぱりデメリットとかあるのかな?
ってか実際Djangoってどうなのさ?開発止まってるらしいけど
開発停止ってどこ情報よ?
スレが止まってるだけだろ
python webフレームワークのデファクトスタンダードだぞ
>>13 flaskとweb2pyはどちらが速いのでしょうか?そんな事を言われたら迷ってしまいます。
>>16 flaskどweb2pyは、どちらもさほど速くない。速いのはTornado, Pyramid, Bottleあたり。
ただどちらを選んでも、いちばんのボトルネックは君の書くコードだから、flaskやweb2pyの速さを気にする必要はない。
web2pyいいとおもうけどなー。なにが不満なのかい?
>>17 今運営してるサイトをPHPからPythonに変更したいんです。MySQLのデータを表示するだけの単純な仕組みなんでflaskがいいかと思ってたんですけど、日本語資料の多さを考えるとweb2pyも良さげですよね。
極小コードでサーバから出力までかけるpyramidがいい
日本の公式っぽいDjangoコミュニティを作ってた連中はどっか行ったけどな
低時給日本人PGが寄り付かないからDjango大好き
web2pyっていつになったら3.xに対応するの?
GoogleでBottle関連を検索するとFlaskも一緒に検索されるのはなんでだろ…
25 :
nobodyさん:2012/09/09(日) 13:00:24.03 ID:So5recQR
python3対応してるフレームワーク色々出てきたけど、mysql-pythonが対応してくれんとどうしようもないんだよなぁ
pypy+ujson+gevent+djangoが俺の目下の野望
ネットワークプログラミング初めてでGeventいじろうとしてるおいらは神風特攻隊やぁ
web2py覚えようかと思うんだけど、どっかにチュートリアル的なもの無いかなー
ようつべの動画は見たけどもうちょっと詳しいのがいい…
29 :
nobodyさん:2012/11/07(水) 06:12:29.30 ID:NhyDUB3l
Pyramidみたいにサイトデザインが良くてドキュメントが一部日本語されてるとそれだけで勉強しようって気にさせてくれる
中で翻訳してくれてる人お疲れさまです
web2pyわかりやすくていいね
『みんなのPython 第3版』を学習すればチュートリアルを見ながらbottleでwebサイトを作れるぐらいの基礎知識が身につきますか?
>>33 みんなのPythonだけでは無理だと遠回しに言っているのですか?
>>34 本だけではすべて網羅してるわけでもない。
本にないわからないことはWEBで調べて。
みんpyはWEBに特化したこと書いてるわけでもないでしょ。
んだから、やる気があればってはなしになる。
みんpyはいい本だから持ってて損は無いと思う。
質問者のレベルわからんし、この本あれば〜とか言われても・・・ってのが正直な気持ち
言語自体初心者なら、「Pythonスタートブック」これおすすめする。
↑よんで次にみんpyとポケットリファレンスで普通な知識量になる。
もっと作り込んだり、チューニングとかしたかったら、それなりの本よめばいい。
>>35 ありがとうございます。
ちょっとPHPを弄れる程度で、PHPのフレームワークを使った事はありません。
Pythonスタートブックを読んだ後にflaskのサイトにあるサンプルを作ってみたのですが、いまいち意味がわからず自分なりにカスタマイズするという事が出来ませんでした。
今回、bottleが初心者向きっぽいブログ記事を見つけたので再度挑戦してみようと思い、みんなのPython 第3版で勉強し、その後にbottleに取り掛かりたいと考えている次第です。
Pythonスタートブック読むだけじゃなくて
全部打ち込んでみたかい?
出てきた組み込み関数とかクラスの作りとかとpythonの独自な書き方とか
まずはこれを頭で理解して覚えた方がいいよ。
急がば回れができないとのちのちつらくなる
スタートブックおわったなら、みんpyやってみればいいよ
フレームワークの選択基準は初心者向きとかでチョイスするより、
日本語の解説サイトが多いのを使うってのもちかみちですよ
わからないことあったら、またきいてくれ
ム板でもbottleのステマしてるのがいたな
tes
>>37 日本語情報を求めるならpythonに足を踏み入れちゃいけんわな
マジで日本語は皆無すぎ
43 :
nobodyさん:2013/04/05(金) 00:39:54.24 ID:/dWCAkVT
pythonだけじゃなく他の言語もそうだよ
海外の技術資料を読めないとお話にならない
日本はIT技術の輸入国だから、輸出国である欧米の言語を理解できないと詰む
だから英語力は付けておかないと苦労する
44 :
nobodyさん:2013/05/19(日) 11:32:47.68 ID:kwG8+ro4
45 :
nobodyさん:2013/05/19(日) 12:55:33.04 ID:kwG8+ro4
>>44 スマートフォンでもタブレットでも、ご利用は可能です。
Flickr も韓国語と中国語はあって日本語無かったしなw
47 :
nobodyさん:2013/11/08(金) 17:28:58.94 ID:uwQAVB05
すみません、プログラム板からこっちに振られたので再度質問させてください。
ubuntuでpyenv内にpylonsフレームワークを利用しているのですが、controllerのpyファイルを修正して、再度サイトにアクセスしても修正前の結果となってしまいます。
apacheのアクセスログにも修正前のログが出力されているので、ブラウザのキャッシュではないと思います。
.pycファイルも消してから実施していますが結果が変わらずです。
>>47 mod_pythonならapache再起動しないとダメだと思う
>>48 ありがとうございます。
毎回apacheの再起動が必要なのですね。
ただtemplate(mako)は入れ替えたら即時反映されるのですがクラスはダメという事でしょうか。
>>49 テンプレートファイルはテキストとして読み込んでパース→出力するだろうから、キャッシュ
されてない限りpythonのコードとしてメモリに載ることは無いわけで。
PHPerですがPythonに興味があります。
PHPerでも理解できそうなフレームワークを教えて下さい。
レベル的にはオブジェクト指向は理解できる。
PHPのフレームワークは使ったことないが、
HTMLとロジックを分離し、オレオレフレームワークでMVCは実現できる。
そんなところです。
mod_pythonのPython Server Pagesという概念はPHPと類似してるようなので理解出来ると思いますが、
mod_pythonは
>>47のようになるので、何かよさげなMVCフレームワークを使いたいです。
>>51 その条件ならFlaskが近いかな
Python全般に言えることだけど日本語ドキュメントはあまり期待できないから
英文読めないと辛いよたぶん
>>52 ありがとうございます。
Flaskを使ってみたいと思います。
やっぱPythonの壁は英語の壁なんですね・・・
英語は自信ないですが試行錯誤してみます。
47ですが、python利用する際はmod_pythonがデファクトかと思ってましたがそんな事もないのでしょうか?
アクセスが増えた場合にパフォーマンスが悪くなったり、アプリが落ちたりといった不安があり何となくapacheを利用しました。
ec2上で構築してますがインスタンスをスケールする事で回避できるのでしょうか。
Python界隈では ngnix + uWSGI とか Tornado が主流じゃないの
重いだけのApacheなんか使わんよたぶん、知らんけど
python使える共用サーバなんてほとんどApache
ルートなくてもユーザ側である程度htaccessで制御できる点で便利だしな
ただルートがある状態でわざわざ選択するかというと自分ならしないな
57 :
47:2013/11/12(火) 00:57:13.06 ID:???
ありがとうございます。
大変参考になりました!
Nginxすらいらない感じだよな。ほとんどuWSGIでpythonは動いている
easy_install uwsgi も
pip install uwsgi もコケるんだけどなんで?
win8 でも centos でもダメ。
エラーメッセージは
File "c:\users\hoge\appdata\local\temp\easy_install-axcwis\uwsgi-2.0\uwsgiconf
ig.py", line 8, in <module>
AttributeError: 'module' object has no attribute 'uname'
windows だと os.uname がないのか。
centos は python-devel 入れたらいけた。
スマソ
どうしてbottleは速くてflaskは遅いの?
64 :
nobodyさん:2014/03/06(木) 10:19:12.46 ID:MzLrM4s3
bottle+nginx+gunicornでhello worldを出すところまで解説してるブログ記事って無いですか?
ご存知の方がいればご教授下さい。
>> 64
Flaskのほうが情報多いから乗り換えたら?
>>65 それはバッドノウハウが多いからじゃねーの?
flask 使うぐらいだっら pyramid 使うわ
スレが出来て2年100レスにも満たない
今年入ってからまだ10レスにも満たない
python完全にwebでオワコンじゃねーか
Djangoは別スレですしおすし
Flask + SQLAlchemy + WTForms の組み合わせが一番ラクだな
www
71 :
nobodyさん:2014/03/31(月) 13:36:35.41 ID:vnmWkZCi
flaskとbottleならどっちがいいんだろ
たいして変わらない気がするけど
>>71 どっちもマイクロフレームワークで大差ないと思うよ
個人的にはBluePrints機能がある分flaskの方が好き
>>69 wtformsよさそうだなと思ったらpython3に対応してなかったでござる
flaskを使って簡単なブログを作ったのですがレンタルサーバー上で動かすときは
どうするのが主流なんでしょうか?
今はレンタルサーバー上で python app.py として動かしているのですが
これで何か問題はありますか?
>>73 してるよ
古いバージョンのドキュメントを見たんじゃないかい
>>74 root権限がないならあまり選択肢ないからなー
debug モードでなければそれでもいいんじゃない
>>75 コマンドコピペでnginxをインストールして
pipでuwsgiをインストールすることはできましたが
設定のしかたがよくわからずorz
自力で頑張って無理だったら改めて質問します。
flaskやbottleで日本語URLが使えるか気になったからちょっとbottleで試してみた。
あっさりうまくいって拍子抜けした。
ただ日本語の資料が無いだけで何でも出来るんだね。
bootstrapとかはどうなんだろう?
78 :
nobodyさん:2014/09/18(木) 11:47:52.19 ID:aFh4d4Gj
pyconのスライドにpyramid入門てあったからちょっと触ってみたけどいいねこれ
79 :
nobodyさん:2014/10/03(金) 08:35:20.88 ID:L6uW93jV
>>>a = ['ringo','リンゴ']
>>>print a
[{'ringo':'\xe3\x82'}]とか\u73feとかで表示されますが、これを日本語でちゃんと、'りんご'と表示させるにはどうすればいいですか?
また、階層が深いと[<ringo: ringo object>]のようになったりもしますがこれの対処法も教えてもらえないでしょうか?
マルチ乙
Python3使うかreprの実装読むかpprintみたいなモジュール使うか自分でdumpするか
>>79 お前も人間的にゴミだな
色んなとこに貼り付けて何が楽しいんだ?
元の質問者をからかいたいのか?
82 :
nobodyさん:2014/10/08(水) 10:15:10.72 ID:L8w+mBMY
84 :
nobodyさん:2014/10/22(水) 10:57:47.09 ID:7SjdzLBw
pyramidとかflask使ってる人にお聞きしたいんですけど
formライブラリは何使ってます?
colandar + deform? それともwtforms?
何かおすすめあれば教えていただきたいです
wtforms 使ってる
colandar , deform っていうのは知らないなぁ
xampp(perl phpオールインワンパッケージ)のpython版みたいのないかな?
xamppちょっといじればいいけどperlもphpもいらないし個別インスコもめんどくさいし
>>85 ありがとうございますwtforms使ってみます
バリデーションエラーの日本語化ってどうしてますか?
組み込みのvalidatorにもmessage引数に日本語メッセージ渡せるよ
自作validatorなら
wtforms.validators.ValidationError(message=u'', *args, **kwargs)
この例外のmessage引数にメッセージをセットして raise する
質問の意味が i18n,i10n,m17n の話しなら使ってないのでよくわからない
>>88 たとえば、DataRequiredなんかはよく使うバリデータだと思うのですが
日本語のバリデーションエラーを表示したいとき、各フィールドにそれぞれ
validators=[DataRequired('内容が入力されていません')]
のように書くものなんでしょうか?
継承してメッセージ書き換えたクラス使えばいいんじゃね
Djangoって今でも主流なんですか?
主流なんじゃね
やっぱ主流なんすか
DjangoはRailsに劣るのでフルスタックMVCでRailsに勝るものが欲しいのですが
最近なんかいいの出てきたりしました?
>>90 なるほど! なぜ思いつかなかったのか…
ありがとうございます
pyramid使ってる人って少ないんですかね
>>96 別に言語の優劣語りたいとかPythonを馬鹿にしてるわけじゃないのでムキにならないで下さい
ただRailsと比べてDjangoの性能が低いということを言っただけなので
フルスタックでなければRailsより勝るものなんて星の数ほどあるわけだし
言語的に遅いPHPでさえRailsに勝るフルスタックなPhalconとかもあるわけだし
じゃあPythonは?というわけです
劣るとか低いとか曖昧な主観で話す奴はだいたい頭が悪い
劣るだけなら性能か機能かわからんが
性能が低いと言われればメモリ使用量も速度もその通りだけどな
どんな環境で動かしてんのか気になるわ
余ったリソースを他にさけるって素晴らしいことよ?
素直にJavaでも使えよ
103 :
97:2014/10/28(火) 03:40:05.33 ID:???
結局ないってことでおk?
>>97 え?PHPって遅いの?
生のPHPが1番速いと思ってたんですけど。
(PHP Python Ruby)
フルスタックが良いという意味がイマイチわからないんですけど、何が出来るんですか?
速いと言われてるフレームワークに自作で機能を付け足していけばいいんじゃないかという考えは間違いですか?
>>103 うん。お前の能力でまともに使えるものは無い
>>105 横から申し訳ないのですが、このテストってRubyは2.0とかじゃないんですよね?
Python3やRuby2.0で比較してる記事を知ってたら教えていただけないでしょうか?
py3でbottleを使ってるのですがsinatraの方が速かったら悔しいなぁと…。
Python Ruby 製のwebフレームワークの応答速度なんて
どれも似たり寄ったりで大差ないよ
速い応答速度が欲しけりゃ言語を変えたほうがいい
それに単純なベンチと違って実際のWebアプリは
実処理部分がより複雑でそこに処理時間とリソースを食われる
いくら単純処理の応答が速かろうがあんまり意味はない
翻って単純で軽いWebAPIを提供するようなサーバ
ではベンチの速いものが役に立つ
djangoのormだけbottleで使うことってできますか?
できる
けどどうせ使うならSQLAlchemyの方が断然高性能だよ
django-ormはdjangoで使うから良い(admin的に)のであって
純粋にORMとしてはいまいち
結局やりたい事ができず
生SQL書かざるを得ない事がまれによくある
SQLAlchemy 程の機能はいらないなら peewee がおすすめ
bottleでdjango-ormより遥かによい
sqlalchemyはいろいろめんどくさいので
簡単なdjangoのormが使えたらなと思いました
peeweeは多対多のリレーションのinsert, update, deleteがくっそめんどくさかった記憶があります
pyramid使ってる人はorm何使ってます?
やっぱりsqlalchemyが多いんでしょうか
ormより生SQLがぜんぜんいい
なんたって生だからね
生でinsertとかも出来ちゃうんだ
ormなんてラップに包んだものは気持ちよくない
生だと気持ちよすぎて早いっていう利点もある
pythonでormならsqlalchemy一択じゃないの
peeweeは商用DBサポートしてないしググっても情報少ない
その点英語にはなるがsqlalchemyの情報の豊富さはとても助かる
sqlalchemy使うのがよさそうですね
ちゃんと勉強してみます
テンプレートエンジンは chameleon, jinja2, mako の3つならどれが一番メジャーなんでしょう?
他におすすめのテンプレートエンジンはありますか?
圧倒的に jinja2
>>120 ありがとうございます。jinja2を使うことにします
tenjin
uwsgiをエンペラーモード?で動かしているのですが、stopやrestartに物凄く時間がかかります。debian(sysvint)からubuntu(upstart)に移行すれば多少は速くなりますか?
ubuntu は debian ベースだけど、速くなると思ったのはなぜ?
>>124 upstartは起動が速いというような記事を読んだので。
もっとも利用者が多いdjangoを使わず他のフレームワーク使うメリットを教えてください
djangoは糞
古参フレームワークに足りないのを足していったのが後出のフレームワーク
仕様や性能は後出のフレームワークのほうが大抵いい(そうじゃないと作る意味がない)
古参フレームワークは後方互換のしがらみでなかなか仕様を変更しにくい
古参であることの強みはドキュメントの充実と利用者の多さによる情報量
あなたはどちらをとりますか?という話
ただ後出のメンテナがアレなのでdjangoが多いってだけ
issueでさぼんな!変われ!と書かれる始末
後出は実験的に作ってみて作者が満足したから後は頼んだみたいなのとか、
作ったはいいが思ったより流行らなくて開発中止とかそういう危険性がある。
prototype.jsを完全に亡き者にしたjQueryのような存在はPython界には今のところない。
pyramid は応援してる
現状Pythonでwebつくるならdjangoが一番無難だと思う
マイクロフレームワークといろんなライブラリを組み合わせてやるのも悪くはないが
組み合わせるそれぞれのライブラリを覚える必要があり
ライブラリによっては満足にメンテされてないのもあるしでdjangoより面倒になりがち
(Flaskとか糞ライブラリが多いし・・・)
それに最近のdjangoはなかなか良くなってきてるよ
以前に比べて随分と痒い所に手が届きやすくなった
133 :
nobodyさん:2014/11/06(木) 15:49:56.57 ID:linuhu5M
AngularJS
pyramidを使うメリットはあるんでしょうか
フルスタックでないフレームワークならflask1択では
werkzeug
Flask本体は特に悪くないけどパフォーマンスも良くない
デバッグとかは使いやすいけど
それよりなによりAddon類に罠が多すぎる
フルスタックが不要ならbottleの方がシンプルで良い
>>124 bottleでサイトを作る時ってMVCにしない方がいいのでしょうか?
なんかディレクトリで分けると作りにくくて…。
>>137 一番の罠はwerkzeukなんだけどな
>>138 言っている意味が良くわからないけどmodels.pyとtemplates分けるだけなら簡単だろ
urlパス毎に分割するのがムズいという意味なのか?
pyramidとbottleをちょっと触ってみたけど大きな違いはなさそう
pyramidにあってbottleにないもの、またはその逆は何かあるんでしょうか
>>140 ブログ記事を参考に
controllers
models
templates
という3つのディレクトリを用意してその中にそれぞれのファイルを作ったんです。
サイトを作りながら何か回りくどいなぁと感じてまして。
mysqlを使う際はどんな構成がベストなのでしょうか?
WerkzeugはLocal周りが気に食わん
Rubyがダメな理由
>>143みたいなレスしないと自尊心が保てないやつがいる所
秀丸でファイルを更新したらftpでアップロードしてsshでuwsgiを再起動(restartに2-3分かかります)してページを確認という方法でBottleのサイトをコツコツ作っています。
自分で作業しながらとても効率が悪いと感じているのですが、何かオススメの方法ってありませんか?
html→PHPとずっとこの方法でやってきたのですがもっと良い方法があるのてはないかと思いまして…。
uWSGI の py-auto-reload で監視しつつ Samba で共有したファイルを直接編集するとか
bottle > pyramid でおkですか?
ssh してるなら ftp なんて使わずに scp すればいいのに
全部自動化出来るし
uwsgi 再起動もしなくて良い方法もあるのに
ローカルに同じ環境作るんじゃだめなんですかね
php のノリのまま開発されてるんですよ
Notepad++はftpやらsshやら直接接続して編集できるから設定しとくと便利
派生ビルドまで作ったのにそんな設定知らんかった
155 :
nobodyさん:2014/12/11(木) 22:47:14.33 ID:mxSsbSUh
質問です。
Javascriptでブラウザ上から操作してある値を得て
その値をAjaxを使ってサーバー側のPythonに送って処理して
その処理した値をJavascriptの方に返したいのですが
どうすればいいでしょうか?
>>155 なぜそれが必要なのか、具体的に何をしたいのか、
さしつかえなければ書いて。学校の宿題?
馬鹿には無理
>>158 開発サーバー使え
bottlepy.org/docs/0.12/tutorial.html#development
2 つめの質問は、uWSGI 側で解決したいならそれであってる。
Python 側で解決したいなら SERVER_NAME で分岐すればいいんじゃね。
>>159 ドメインの管理はnginxでよくねーか?
161 :
nobodyさん:2015/02/12(木) 03:03:00.09 ID:Yd96u+r4
少し詰まってしまったので質問します。
flask に flask-wtforms を 入れてフォームを作成したのですが
form.validate_on_submit() を使った際に Trueにならなくて困ってます。
TextField()で作成したフォームをsubmitした場合はうまくいくのですが
なぜかSelectFieldで作成したフォームはどの値を入れてもFalseになってしまいます。
enable_csrf を false にしたり templatesの<form>の一番上に{{ form.csrf_token }}を入れたり
色々としてるのですがうまくいかないです。
Go言語に鞍替えして最近ぜんぜん使ってないけど
flaskは3rdライブラリがバグまみれでかなり手直しが必要だった
というわけでflask-wtformsのソース見たほうがよい (俺の直感)
163 :
nobodyさん:2015/02/12(木) 15:12:50.08 ID:Yd96u+r4
161 です。
いろいろしてたら解決しました。
SelectFieldで作成した際にchoicesで返却する値を
int型にしてるとダメだったみたいです。
unicode()で変換してから通すと行けました。
>>162 flask-sqlalchemy の悪口はそこまでだ!
pyramid使おうよ
flaskとそんなに変わらないよ
個人で使うならflaskがお手軽で楽だなー
異常終了した時に自動的に再起動させるには何を使えばいいですか?
ちなみにPython3です。
プロセス監視するスクリプトを書けばいいんじゃね
batでループさせとけ
>>170 >>172 ググってみたらpython3には対応していないという話が出てきました。
(´;ω;`)
>>173 デーモン管理とアプリは切り離せるだろ
supervisor はあくまでもデーモン管理だよ