【Python】Webフレームワーク Djangoスレ Part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/12/15(木) 23:47:02.03ID:???Web開発する上で必要となる機能がそろっており、
管理サイト画面を自動作成できるなどの特色を持ちます。
前スレ
【Python】Webフレームワーク Djangoスレ Part1
http://kohada.2ch.net/test/read.cgi/php/1156612854/
本家サイト
http://www.djangoproject.com/
日本語ユーザ会「Djangoと日本の仲間たち」
http://www.djangoproject.jp/
日本語解説サイト
ttp://ymasuda.jp/python/django/index.html
解説本(英語) 「Pro Django:」2006年10月30日出版予定
ttp://www.amazon.co.jp/gp/product/1590597257/
あなたがDjangoを利用すべき10の理由(和訳)
ttp://www.everes.net/2006/jan/30/3042306a305fdjango3092522975283059304d10306e74067531/
IT Pro記事
ttp://itpro.nikkeibp.co.jp/article/NEWS/20060410/234868/
IBM developerWork記事
ttp://www-06.ibm.com/jp/developerworks/linux/060802/j_l-django.shtml
0082nobodyさん
2012/04/11(水) 10:56:01.11ID:WgNPCZsm何とか使ってます。
0083nobodyさん
2012/04/13(金) 13:19:14.34ID:0/eMv/lO>>34
ありがとうございました
0084nobodyさん
2012/04/13(金) 13:23:02.97ID:???0085nobodyさん
2012/04/13(金) 23:04:56.60ID:???2.x系は日本語の扱い面倒くさいし
0086nobodyさん
2012/04/13(金) 23:40:44.62ID:???0087nobodyさん
2012/04/14(土) 00:46:37.29ID:???戦車に例えると
PHP4はT34/76
PHP5はT34/85
Railsはパンター
DjangoはタイガーI
って感じだからな。
JavaとかASP.NETはM4と言うか米軍
0089nobodyさん
2012/04/14(土) 02:51:40.51ID:???0090nobodyさん
2012/04/14(土) 02:57:17.67ID:???重そうww
喩えが非常に良くないw
0091nobodyさん
2012/04/14(土) 03:02:12.44ID:???ひどい偏見ながらbeginとかendとか見た時にMSのマクロ系連想しちゃって受け付けなかった
pythonってweb以外にも科学技術計算とか沢山あるしね
数の暴力でアホみたいにライブラリ充実させて、負けることは絶対無いと思う
googleさんもいるし…
0092nobodyさん
2012/04/14(土) 23:30:25.46ID:???0093nobodyさん
2012/04/16(月) 15:34:39.61ID:???ttps://docs.djangoproject.com/en/1.4/topics/install/
0094nobodyさん
2012/04/16(月) 21:36:37.11ID:???project
-manage.py
--project
---settings.py
---wsgi.py
みたいになっててちょっと焦った
manage.pyの処理もちょっと変わったみたいで過去のプロジェクトそのままじゃ動かんかった
あとrunserverもwsgi指定できんのかな
settings.WSGI_APPLICATIONとかオプション出来てる
あとで調べてみよ
0095nobodyさん
2012/04/16(月) 23:17:56.03ID:???mod_pythonで動かしてる俺にはヤバいニュースだな。
ドキュメント通りにインスコしても何も表示されないんだよなー。
0096nobodyさん
2012/04/17(火) 00:08:34.20ID:???0097nobodyさん
2012/04/17(火) 02:08:18.68ID:???mod_wsgi系の設定はここにかいてあるっぽい
ttps://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/modwsgi/
0099nobodyさん
2012/04/18(水) 00:34:32.35ID:???urlテンプレートタグとGeneric View直すの面倒かった
0100nobodyさん
2012/04/18(水) 12:43:31.07ID:Wype6WQ20101nobodyさん
2012/04/19(木) 02:40:41.54ID:???メモリリークが一目でわかる
ttps://github.com/munhitsu/django-dowser
0102nobodyさん
2012/04/19(木) 20:46:19.69ID:1eA2rign例えばUserオブジェクトに属性email、アクセサemail()があるとき
{{ user.email }} とは書けるけど {{ user.email() }} だとエラーになります。
TemplateSyntaxError: Could not parse the remainder: '()' from 'user.email()'
これはどうしてなんでしょうか。
ドキュメントにはテンプレートエンジンが.(dot)を見つけたとき以下の順で評価を試みるとあるけど
関係してるのかなんだかさっぱり・・・
辞書の照合 (lookup)=>属性の照合=>メソッドの呼び出し=>リストをインデクス指定して照合
0103nobodyさん
2012/04/19(木) 21:00:09.93ID:1eA2rignということは、テンプレートに書くときはメソッド呼び出しにカッコはつけないということなのかな。
ぐぐってたら"丸括弧を付ける必要はありません"と書いてるページがあって
曖昧ではありますが、ひとまずそのつもりで進めてみますですm(_ _)m
0104nobodyさん
2012/04/26(木) 07:06:17.63ID:RMLosHkbFormPreviewを使って、プレビュー付きの登録ページを作っています。
普通はこんな感じ↓でurls.pyに書いて呼び出しますが、
url(r'^register$', RegistFormPreview(RegistForm)),
既にDBに情報が記録されている場合、
その情報を編集できるように、こんな感じ↓の処理をさせたいと考えています。
def register(request):
try:
# DB登録済みなので編集画面を表示
profile = request.user.get_profile()
return RegistFormPreview(RegistForm(profile))
except SiteProfileNotAvailable:
# DBにないので、新規登録画面を表示
return RegistFormPreview(RegistForm())
けど、関数内からClass Based Viewを呼び出すことはできないみたい。
何か良い方法ないでしょうか?
0107nobodyさん
2012/05/09(水) 15:53:29.80ID:???良い所と悪い所を教えてください。
0108nobodyさん
2012/05/10(木) 12:15:07.36ID:???強いて言えば何か問題あったとき日本語情報沢山あるのがror
コード読んで解決するのがdjango
pythonかrubyの違いは好みだしね
0109nobodyさん
2012/05/10(木) 22:45:34.96ID:???{% for x in X %} ... {% endfor %}
の後に、もう1度
{% for x in X %} ... {% endfor %}
を記述したところ、前半は表示されるのに後半は何も表示されませんでした。1つのシーケンスは1回しか使えないのでしょうか?
0110nobodyさん
2012/05/11(金) 08:34:20.27ID:???0111nobodyさん
2012/05/11(金) 09:56:32.07ID:???0112nobodyさん
2012/05/11(金) 10:17:46.83ID:???FormフレームワークはDjangoが圧倒的に優秀
あとRailsはコマンドラインが糞遅い。
よってRailsを選択するメリットは皆無
0113nobodyさん
2012/05/11(金) 11:51:30.50ID:???そいうことやったことないから原因わからんけど同じループ回せられないならviewでレンダリングしたHTMLをテンプレートに渡してやったらどう?
render_to_stringとかで
0114nobodyさん
2012/05/11(金) 12:45:49.39ID:???0115109 / 111
2012/05/11(金) 19:43:21.59ID:???0116nobodyさん
2012/05/11(金) 21:08:24.13ID:???0117nobodyさん
2012/05/12(土) 23:49:26.94ID:Ss+1w/F4どうしたらいいですか?
0118nobodyさん
2012/05/13(日) 00:03:13.19ID:???0119nobodyさん
2012/05/13(日) 00:27:12.18ID:???0120107
2012/05/13(日) 00:33:05.88ID:???>>108
日本語の情報が少ないのはしょうがないですね。
でも公式サイトの英語のドキュメントは丁寧に書かれている気がする。
>>112
DjangoはMVCのViewの部分が使いやすいってことですか?
Rails遅b「ってのは聞いbスことがありまbキ。
大部封ェはRubyの原因bゥもしれないけbヌ。
>>118
俺もDjangoこれからだけど素直に最新の1.4でいいんじゃないの。
覚えてる間に次のバージョンでるでしょうw
0123nobodyさん
2012/05/13(日) 22:00:06.06ID:XIq+bFUq(巨大な)オブジェクトをメモリ上に共有する方法ってないですか?
オブジェクトが小さければキャッシュ機能でmemcachedを使う
というのが良さそうですが、非常に大きい(数ギガ)オブジェクトを
共有したいのです
(memcachedだとオブジェクト一つのサイズには上限があるので
無理だと思ってるのですが、そんなことないですか?)
小さなオブジェクトが大量にあるのではなく
一つの巨大なオブジェクトというのが外せない条件になってます。
具体的な上限もなくて、システム上に展開できるサイズなら
何Gでも利用したいとなっています。
やりたいことのイメージは
「データを加工せよ」というリクエストを一回だけ発行して(この処理は遅くてもいい)
それ以降は
「加工したデータをグラフAにして描写」
「加工したデータをグラフBにして描写」
「加工したデータを更に加工」
というリクエストを発行
というものです。
この加工データが巨大なオブジェクトになっていて
複数のリクエストに対して高速に処理するために
メモリ上に共有させておきたいのです
何か上手い方法ないでしょうか?
0124nobodyさん
2012/05/13(日) 23:10:09.79ID:???共有ストレージの考えだとネットワークI/Oがネックになるし排他も面倒だから
加工処理用にバックエンドサーバを設けるのがシンプルかな。
んでキューでなげるようにすれば「データを加工せよ」ってのもフロント自体はすぐ返せるし、
バックエンドのクラスタ化も容易。
あとはフロントでキャッシュさせるなりチューニングしていくかんじ。
0125nobodyさん
2012/05/13(日) 23:39:37.00ID:XIq+bFUq不勉強で申し訳ないのですが
キューというのはメッセージ・キューイングと呼ばれる機能のことでしょうか?
具体的なイメージがよくわかってないのですが、仮にやりたかったことを
加工リクエスト
APPサーバがDBからデータ取得
取得したデータを加工
加工データを保持(この方法がわからなかった)
結果(加工しましたというメッセージ)をレスポンス
グラフAの描写リクエスト
APPサーバが保持されていた加工データをグラフ化
結果(グラフ)をレスポンス
として書いた場合、124さんの方法はどのような流れになるのでしょうか?
加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
するということですか? またその場合、加工データは異なるリクエスト間で
共有されるのでしょうか?
質問ばかりですみません
0126nobodyさん
2012/05/14(月) 09:28:20.64ID:???> 加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
そう。仮に物理サーバはいっしょでも論理的に役割分担させる。
保持はGBオーダなデータ加工だし、mmapにしとけばファイルにも逃がせられる。
> するということですか? またその場合、加工データは異なるリクエスト間で
> 共有されるのでしょうか?
フロントへの加工リクエストに対して同じ対象の描写リクエストがだせるってことは
なんらかの識別子が存在してるはずで、バックエンドでも同様にやればなんとでもできる。
0127nobodyさん
2012/05/14(月) 12:26:51.96ID:???1.4から日付周りが変わってるから後々面倒なことになりたくなかったら1.4がいいよ
あと多対多のインスタンスもjoinするprefetch_related()とかもあって1.4を選ばない理由がない
generic viewがクラスベースになり、日本語サイトを参考に出来ないのがちょっとハマるかもしれないけど
0128nobodyさん
2012/05/15(火) 21:42:51.74ID:???0129nobodyさん
2012/05/16(水) 00:11:15.40ID:???返信遅れました
正直まだ理解できてない部分があるのですが
何とかがんばってみます
(オブジェクトがリクエスト間で共有できるということは
バックエンド用のプロセスが新たに走っている
ことになるのですよね?)
もし「ここを見ればいい」というサイトがあれば
教えていただけるとありがたいです
0130123
2012/05/16(水) 00:17:58.30ID:???http://d.hatena.ne.jp/yuku_t/20101018/1287391988
これを見た感じだとデータを保有しておくというよりは
文字通りジョブ(処理)を投げておいてバックエンドで実行させて
処理が終わり次第結果が返ってくるという印象を持ったのですが、
本来はそういう意図だとしても使い方を工夫することでストレージ
のように利用することも出来る、ということでしょうか
0131nobodyさん
2012/05/29(火) 23:13:19.69ID:???0132nobodyさん
2012/05/31(木) 21:16:34.98ID:???0133nobodyさん
2012/06/01(金) 02:05:04.95ID:???utf8mb4対応くるだろうか
0134nobodyさん
2012/06/17(日) 15:42:24.03ID:VLPHimKQなぜ表示されないのでしょうか(htmlファイル等はバグ等なく作成済み)
eclipse 3.7.2
django 1.3.0
0135名無し
2012/06/18(月) 10:55:27.84ID:AXkhynzr楽しめる人気の占い発見しちゃいました。
いくつか質問に答えるだけであなたにピッタリの人がわかっちゃう。
気になったかたはチェックしてみてね。
http://232bs7.info/2/
0137nobodyさん
2012/07/07(土) 15:38:34.13ID:KIWI0EBX管理画面にmodelsに定義したクラスが表示されなくなってしまって
とりあえずadmin.pyのほうをmodels.pyと同じフォルダに移したら
また表示されるようになったんだけど
admin.pyとmodels.pyって必ず同じフォルダい入れてないとダメなの?
admin.site.register(SampleModel, SampleAdminCls)
これを
admin.site.register(hoge.SampleModel, SampleAdminCls)
みたいにしても意味なかった
0138nobodyさん
2012/07/19(木) 00:34:40.11ID:???な?・・・
0139nobodyさん
2012/07/19(木) 20:17:21.87ID:???0140nobodyさん
2012/07/25(水) 01:35:10.73ID:???例えば、メールアドレスでログインさせたい時とか、
ユーザー登録フォームを複数ページに分割させて
最後にプレビュー表示&メール認証させるとか、
よくあるシステムを構築するのに一苦労する。
0141nobodyさん
2012/07/25(水) 01:43:35.48ID:???年と日は数字だけのSelectなのに、
月の部分だけは「○月」とか表示されるし、
サクっとできて欲しい機能がいまいち不完全。
情報共有したがらないPython使いの気質のせいか?
0142nobodyさん
2012/07/25(水) 13:22:49.19ID:???Djangoはその点Railsよりマシなはずなのに、情報自体少ない。
Djangoの情報が溢れれば楽なのにな
0143nobodyさん
2012/07/27(金) 16:53:31.64ID:cxcs/EZnescで逃げちゃってるからきっとadminサイト入れない。
0144nobodyさん
2012/07/28(土) 15:55:26.49ID:???DjangoとSQLのバージョン書こう
つうか、設定ファイルに書けばよくないか
0145nobodyさん
2012/08/09(木) 00:46:11.95ID:CMriqrOl現在、勉強がてらにユーザ認証を行う掲示板のようなものをつくろうと考えています。
Modelとしましては、Entryクラスがあり、その中に
・書きこみ日時
・タイトル
・本文
・書きこみユーザ
という情報を持たせたいのですが、書きこみユーザはどのようにフィールドを設定すればいいのでしょうか?
まだ勉強中なのですが、認証にはDjangoのauthモジュールを使おうかと考えているのですが、そのauthモジュールの書きこみユーザとの連携方法がわかりません。
よろしくおねがいします。
0146Wob9w
2012/08/09(木) 02:00:17.11ID:???HOFj4DjMraDFpyM
133941476137733アメフトォ(大嘘) そして面接へ
0147nobodyさん
2012/08/24(金) 00:33:32.43ID:???request.userからユーザーオブジェクト拾って入れる
ForeignKey(django.models.auth.models.User)でいいと思うけど
ttp://djangoproject.jp/doc/ja/1.0/ref/request-response.html#django.http.HttpRequest.user
0148nobodyさん
2012/08/31(金) 05:50:33.79ID:???django、良いフレームワークなのに
なんでこんなに人少ないんだ?
そんなにPython使いが少ないのか、
そんなにPHPが便利すぎるのか。。
0149nobodyさん
2012/08/31(金) 19:16:38.98ID:vOsjd0I60150nobodyさん
2012/09/03(月) 10:36:41.32ID:SqdE+p9Qhttp://docs.nullpobug.com/django-doc-ja/trunk/ref/models/fields.html#django.db.models.ImageField.height_field
このページの説明では何を言っているのかよくわかりませんでした。
0151nobodyさん
2012/09/08(土) 09:07:34.56ID:???0152nobodyさん
2012/09/09(日) 12:55:38.23ID:So5recQR0153nobodyさん
2012/09/10(月) 10:18:25.23ID:SzEanAFyブラウザのクッキーファイルが漏れて、セッションIDが奪われた時の対策としてどのようなものがあるか調べております。
0154nobodyさん
2012/10/01(月) 09:36:29.13ID:Yqd8lXeW0156nobodyさん
2012/10/02(火) 13:29:26.30ID:???0157nobodyさん
2012/10/07(日) 11:17:06.65ID:???> 日本でPython使ってる人なんて300人ぐらいしかいないもの
お前ら一人ひとりがこの精鋭たちなんだな……
http://www.youtube.com/watch?v=CFZiil0DfMc
0158nobodyさん
2012/10/22(月) 23:38:00.87ID:???nginxとgunicornをネットではよく見かける
0159nobodyさん
2012/10/25(木) 14:49:20.54ID:???俺も知りたい。
nginxにしようか無難にapacheのままにしとくか迷ってる。
DBはPostgresが主流なのかな。
0160nobodyさん
2012/11/15(木) 09:02:26.77ID:O5OuIbETそこで1点悩んでいる部分があるのですが、現在制作しているサイトはPHPで制作しており、アクセス毎に携帯電話、スマートフォン、PC、IE6-8を切り替えて表示していたのですが、Djangoではこのようなアクセスの振り分けはどのように行うのが一般的になるでしょうか?
urls.pyに/sp/indexや/i/index等をはさみアクセスURL毎に端末を振り分けるとなると、Viewが端末毎に必要になりそうですし、全てのViewの中で端末のUAで振り分けるとViewの1メソッドが大きくなるのではないかと思っています。
携帯電話向けサイトだとAjaxなどが使えないためPCと遷移も変わるので、前者がいいのかとも考えているのですが、検索した際に携帯電話からPCサイトにアクセスすると見えなくなってしまうとも考えています。
私の考えをただ書かせて頂きましたが、一般的な方法や工夫されている方法などあれば教えて頂ければと思います。よろしくお願い致します。
0161nobodyさん
2012/11/21(水) 21:48:36.75ID:???語ることすらないわ
0162nobodyさん
2012/11/22(木) 00:15:52.74ID:???0163nobodyさん
2012/11/22(木) 01:17:16.06ID:???フレームワークは3系に対応するまで覚える気になれません。
web2pyの対応を待ってるんだけど、Djangoはもう対応したのですか?
0164nobodyさん
2012/11/22(木) 02:32:21.53ID:???0165nobodyさん
2012/11/28(水) 13:22:36.30ID:???http://blog.madoro.org/mn/84
0166nobodyさん
2012/11/29(木) 14:03:21.70ID:???0167nobodyさん
2012/11/29(木) 19:16:21.88ID:???0168nobodyさん
2012/11/30(金) 08:04:28.86ID:???そうなると、スクリプトを設置する際に、syncdbしたあとに書きこみスクリプトを実行し、そのあとにスクリプトを動かす必要があるという事でしょうか?
0169nobodyさん
2012/11/30(金) 16:25:00.13ID:???0170nobodyさん
2012/12/01(土) 11:24:52.03ID:???逆に質問だけど
あなたが Django 使う前はどういう方法で DB の初期値を作っていましたか?
0171nobodyさん
2012/12/01(土) 11:59:08.01ID:???データだけ空(または必要最小限な初期値のみ&もちろんインデックスも最初から)に戻して
うpしてくれる機能があると便利かな、とは思う。
0172nobodyさん
2012/12/01(土) 15:45:47.56ID:???胸熱
0174nobodyさん
2012/12/18(火) 07:32:04.58ID:???0176nobodyさん
2012/12/20(木) 08:11:54.79ID:???納品してしまったら、こちらからはシステム以外のメンテナンスを余りしなくてもいいようにしたいです。
0177nobodyさん
2012/12/26(水) 17:54:39.43ID:???複数のデータベースを使った実験をしようと、
http://www.ianlewis.org/jp/django-model-other-db-memo
こちらを参考に特定のモデルの振り分けを試してみたのですが、
django.core.exceptions.ImproperlyConfigured: Error importing database router TestRouter: "cannot import name connection"
というエラーが出てしまいます。
検索すると、
http://stackoverflow.com/questions/11452837/django-database-router-cannot-import-name-connection
ここがみつかり、DATABASE_ROUTERSの上の行に
from django.db import connections
を追加するとエラーが出なくなります。
ですが、setting.pyの最上部に追加すると同じエラーが出ます。
これはなぜDATABASE_ROUTERSの上の行でなければいけないのでしょうか?
0178nobodyさん
2012/12/27(木) 15:14:46.35ID:???説明していただけませんか?
0179nobodyさん
2012/12/29(土) 03:06:45.67ID:G1+BbVGH0180nobodyさん
2013/01/05(土) 18:01:55.06ID:???http://tinyurl. com/9w97424
0181nobodyさん
2013/01/07(月) 12:07:01.80ID:???UserForm( request.POST, request.FILES) のように、User登録フォームを作成しているのですが、passwordも入力された値を引き継がれるようです。これをパスワードのinputのvalueを空にしたいのですが、formsetの中身を操作するメソッドは用意されていないでしょうか?
■ このスレッドは過去ログ倉庫に格納されています