【Python】Python Webフレームワーク総合スレ

このエントリーをはてなブックマークに追加
125nobodyさん:2014/11/03(月) 16:36:35.91 ID:???
>>124
upstartは起動が速いというような記事を読んだので。
126nobodyさん:2014/11/05(水) 14:38:36.63 ID:???
もっとも利用者が多いdjangoを使わず他のフレームワーク使うメリットを教えてください
127nobodyさん:2014/11/05(水) 15:54:49.84 ID:???
djangoは糞
128nobodyさん:2014/11/05(水) 19:42:19.44 ID:???
古参フレームワークに足りないのを足していったのが後出のフレームワーク
仕様や性能は後出のフレームワークのほうが大抵いい(そうじゃないと作る意味がない)
古参フレームワークは後方互換のしがらみでなかなか仕様を変更しにくい
古参であることの強みはドキュメントの充実と利用者の多さによる情報量
あなたはどちらをとりますか?という話
129nobodyさん:2014/11/05(水) 19:54:40.38 ID:???
ただ後出のメンテナがアレなのでdjangoが多いってだけ
issueでさぼんな!変われ!と書かれる始末
130nobodyさん:2014/11/05(水) 20:20:18.62 ID:???
後出は実験的に作ってみて作者が満足したから後は頼んだみたいなのとか、
作ったはいいが思ったより流行らなくて開発中止とかそういう危険性がある。
prototype.jsを完全に亡き者にしたjQueryのような存在はPython界には今のところない。
131nobodyさん:2014/11/05(水) 20:21:16.64 ID:???
pyramid は応援してる
132nobodyさん:2014/11/06(木) 14:52:59.78 ID:???
現状Pythonでwebつくるならdjangoが一番無難だと思う

マイクロフレームワークといろんなライブラリを組み合わせてやるのも悪くはないが
組み合わせるそれぞれのライブラリを覚える必要があり
ライブラリによっては満足にメンテされてないのもあるしでdjangoより面倒になりがち
(Flaskとか糞ライブラリが多いし・・・)

それに最近のdjangoはなかなか良くなってきてるよ
以前に比べて随分と痒い所に手が届きやすくなった
133nobodyさん:2014/11/06(木) 15:49:56.57 ID:linuhu5M
AngularJS
134nobodyさん:2014/11/08(土) 16:50:22.23 ID:???
pyramidを使うメリットはあるんでしょうか
フルスタックでないフレームワークならflask1択では
135nobodyさん:2014/11/08(土) 17:27:48.36 ID:???
werkzeug
136nobodyさん:2014/11/08(土) 19:28:14.24 ID:???
>>134
アレが一番糞だろうが!
137nobodyさん:2014/11/09(日) 01:47:37.28 ID:???
Flask本体は特に悪くないけどパフォーマンスも良くない
デバッグとかは使いやすいけど
それよりなによりAddon類に罠が多すぎる

フルスタックが不要ならbottleの方がシンプルで良い
138nobodyさん:2014/11/09(日) 11:12:52.97 ID:???
>>124
bottleでサイトを作る時ってMVCにしない方がいいのでしょうか?

なんかディレクトリで分けると作りにくくて…。
139nobodyさん:2014/11/09(日) 11:37:20.96 ID:???
>>137
一番の罠はwerkzeukなんだけどな
140nobodyさん:2014/11/09(日) 11:39:48.29 ID:???
>>138
言っている意味が良くわからないけどmodels.pyとtemplates分けるだけなら簡単だろ

urlパス毎に分割するのがムズいという意味なのか?
141nobodyさん:2014/11/09(日) 11:46:50.81 ID:???
pyramidとbottleをちょっと触ってみたけど大きな違いはなさそう
pyramidにあってbottleにないもの、またはその逆は何かあるんでしょうか
142nobodyさん:2014/11/09(日) 12:34:57.85 ID:???
>>140
ブログ記事を参考に
controllers
models
templates
という3つのディレクトリを用意してその中にそれぞれのファイルを作ったんです。

サイトを作りながら何か回りくどいなぁと感じてまして。

mysqlを使う際はどんな構成がベストなのでしょうか?
143nobodyさん:2014/11/09(日) 12:54:45.90 ID:???
144nobodyさん:2014/11/09(日) 13:05:57.74 ID:???
WerkzeugはLocal周りが気に食わん
145nobodyさん:2014/11/09(日) 13:29:49.40 ID:???
Rubyがダメな理由
>>143みたいなレスしないと自尊心が保てないやつがいる所
146nobodyさん:2014/11/09(日) 15:06:58.64 ID:???
>>142
俺はその構成で困ったことは無いよ
147nobodyさん:2014/11/26(水) 16:20:11.73 ID:???
秀丸でファイルを更新したらftpでアップロードしてsshでuwsgiを再起動(restartに2-3分かかります)してページを確認という方法でBottleのサイトをコツコツ作っています。

自分で作業しながらとても効率が悪いと感じているのですが、何かオススメの方法ってありませんか?

html→PHPとずっとこの方法でやってきたのですがもっと良い方法があるのてはないかと思いまして…。
148nobodyさん:2014/11/26(水) 18:44:51.57 ID:???
uWSGI の py-auto-reload で監視しつつ Samba で共有したファイルを直接編集するとか
149nobodyさん:2014/11/27(木) 13:30:47.65 ID:???
bottle > pyramid でおkですか?
150nobodyさん:2014/11/27(木) 15:03:46.87 ID:???
ssh してるなら ftp なんて使わずに scp すればいいのに
全部自動化出来るし
uwsgi 再起動もしなくて良い方法もあるのに
151nobodyさん:2014/11/27(木) 16:24:22.53 ID:???
ローカルに同じ環境作るんじゃだめなんですかね
152nobodyさん:2014/11/27(木) 16:46:51.40 ID:???
php のノリのまま開発されてるんですよ
153nobodyさん:2014/12/05(金) 10:15:44.39 ID:???
Notepad++はftpやらsshやら直接接続して編集できるから設定しとくと便利
154nobodyさん:2014/12/11(木) 22:32:23.93 ID:???
派生ビルドまで作ったのにそんな設定知らんかった
155nobodyさん:2014/12/11(木) 22:47:14.33 ID:mxSsbSUh
質問です。
Javascriptでブラウザ上から操作してある値を得て
その値をAjaxを使ってサーバー側のPythonに送って処理して
その処理した値をJavascriptの方に返したいのですが
どうすればいいでしょうか?
156nobodyさん:2014/12/11(木) 23:08:36.45 ID:???
>>155
なぜそれが必要なのか、具体的に何をしたいのか、
さしつかえなければ書いて。学校の宿題?
157nobodyさん:2014/12/12(金) 03:51:56.39 ID:???
馬鹿には無理
158nobodyさん:2014/12/14(日) 00:26:19.96 ID:???
scに書いてしまったので再投稿です。


>>150 >>151
>>152 」の方が書かれているようにPHPから来たのでputtyとfilezillaを使ってます。

>>153
初めて知りました。時間が出来た時に勉強します。

[uwsgi]に
python-auto-reload = 1
を追加したら.pyのファイルは自動更新されるようになりました。

http://d.hatena.ne.jp/dayflower/20121017/1350447805
を参考に.tplファイルも自動更新にしようとしたのですが、
uwsgiを別の仮想環境にインストールしている
(これを参考にしました→ http://qiita.com/5t111111/items/e170fead91261621b054 )
のでimport uwsgiでエラーが出てしまいました。

複数のドメインを運用する場合にはそれぞれにuwsgiを入れるしかないのでしょうか?
159名無しさん@そうだ選挙に行こう:2014/12/14(日) 15:57:45.36 ID:???
>>158

開発サーバー使え
bottlepy.org/docs/0.12/tutorial.html#development

2 つめの質問は、uWSGI 側で解決したいならそれであってる。
Python 側で解決したいなら SERVER_NAME で分岐すればいいんじゃね。
160nobodyさん:2015/01/06(火) 12:59:12.41 ID:???
>>159
ドメインの管理はnginxでよくねーか?
161nobodyさん: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 }}を入れたり
色々としてるのですがうまくいかないです。
162nobodyさん:2015/02/12(木) 11:56:47.91 ID:???
Go言語に鞍替えして最近ぜんぜん使ってないけど
flaskは3rdライブラリがバグまみれでかなり手直しが必要だった
というわけでflask-wtformsのソース見たほうがよい (俺の直感)
163nobodyさん:2015/02/12(木) 15:12:50.08 ID:Yd96u+r4
161 です。
いろいろしてたら解決しました。
SelectFieldで作成した際にchoicesで返却する値を
int型にしてるとダメだったみたいです。
unicode()で変換してから通すと行けました。
164nobodyさん:2015/02/12(木) 22:35:54.49 ID:???
>>162
flask-sqlalchemy の悪口はそこまでだ!
165nobodyさん:2015/02/13(金) 11:57:04.03 ID:???
pyramid使おうよ
flaskとそんなに変わらないよ
166nobodyさん:2015/02/14(土) 14:32:56.93 ID:???
>>165
変わるよ
pyramid の方が良い
167nobodyさん:2015/02/19(木) 00:37:00.06 ID:???
個人で使うならflaskがお手軽で楽だなー
168nobodyさん:2015/02/24(火) 14:27:50.65 ID:???
異常終了した時に自動的に再起動させるには何を使えばいいですか?

ちなみにPython3です。
169nobodyさん:2015/02/24(火) 17:02:08.23 ID:???
プロセス監視するスクリプトを書けばいいんじゃね
170nobodyさん:2015/02/24(火) 23:43:14.26 ID:???
ttp://supervisord.org/ とか使うのがいいんじゃね
171nobodyさん:2015/02/25(水) 09:28:03.28 ID:???
batでループさせとけ
172nobodyさん:2015/02/25(水) 17:36:13.42 ID:???
>>170
が正解
173nobodyさん:2015/02/26(木) 06:41:36.70 ID:???
>>170
>>172

ググってみたらpython3には対応していないという話が出てきました。
(´;ω;`)
174nobodyさん
>>173
デーモン管理とアプリは切り離せるだろ
supervisor はあくまでもデーモン管理だよ