[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/19 22:30 / Filesize : 222 KB / Number-of Response : 1017
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【Python】Webフレームワーク Djangoスレ Part2



1 名前:nobodyさん mailto:sage [2011/12/15(木) 23:47:02.03 ID:???.net]
LL言語「Python」で実装されたWebフレームワーク Django
Web開発する上で必要となる機能がそろっており、
管理サイト画面を自動作成できるなどの特色を持ちます。

前スレ
【Python】Webフレームワーク Djangoスレ Part1
kohada.2ch.net/test/read.cgi/php/1156612854/

本家サイト
www.djangoproject.com/

日本語ユーザ会「Djangoと日本の仲間たち」
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

201 名前:nobodyさん mailto:sage [2013/04/04(木) 17:49:08.54 ID:???.net]
馬鹿には無理

202 名前:nobodyさん [2013/04/04(木) 22:21:11.84 ID:hTCiyNuO.net]
Django + jinja2 の環境を作っていてはまってます。

以下のように settings.py へカスタムフィルタを指定すると、
" 'str' object is not callable " のエラーになります。
-----------------------------------
JINJA2_FILTERS = {
'datetimeformat': 'utils.filters.datetimeformat',
}
-----------------------------------

で、クォーテーションを取って関数直にすると動きます。

-----------------------------------
JINJA2_FILTERS = {
'datetimeformat': utils.filters.datetimeformat,
}
-----------------------------------

なぜ??偉い人教えてください。

django1.4.5 jinja2-2.6 django_jinja-0.11

203 名前:nobodyさん mailto:sage [2013/04/05(金) 00:29:47.17 ID:???.net]
>>200
文字列はcallableじゃないからとしか言いようが。。

204 名前:nobodyさん mailto:sage [2013/04/05(金) 09:17:53.64 ID:???.net]
DjangoってO/R Mapperをすきなものに
簡単に入れ替えて使えるようになってますか?

205 名前:nobodyさん [2013/04/05(金) 11:25:49.80 ID:F/TEgITk.net]
>>201
kay-docs.shehas.net/templates.html

206 名前:nobodyさん mailto:sage [2013/04/09(火) 13:48:17.20 ID:???.net]
>>202
できないし、やる意味もない。

207 名前:nobodyさん mailto:sage [2013/04/10(水) 14:16:59.81 ID:???.net]
>>202
できるけど、それならDjangoを使う意味がない

208 名前:nobodyさん mailto:sage [2013/04/10(水) 15:54:55.53 ID:???.net]
>>204-205
ありがとう
O/R mapperやテンプレートエンジンは何種類かから選べたり、
自由に入れ替えたりできるフレームワークもあるので、Djangoも
そうなってると思ったのですが、残念

209 名前:nobodyさん mailto:sage [2013/04/14(日) 20:18:57.11 ID:???.net]
iPhoneアプリ. Windowsアプリを売って生き残れ Ver 1.7 リンク数61
Http://qr. net/kh4y



210 名前:nobodyさん mailto:sage [2013/04/18(木) 22:35:21.76 ID:???.net]
django製の業務パッケージってなにか実例ないですか?

211 名前:nobodyさん mailto:sage [2013/05/01(水) 12:26:59.19 ID:???.net]
djangoアプリって日本好みなのは少ないね。
フレームワークとしては良いんだけどなぁ。

212 名前:nobodyさん mailto:sage [2013/05/01(水) 23:56:23.92 ID:???.net]
Webサイトは沢山つくったけど業務アプリ/パッケージはないな
そもそもWebサイトに比べてそんなに引き合いもないし

213 名前:nobodyさん mailto:sage [2013/05/09(木) 22:27:24.07 ID:???.net]
django1.3をscalaにポーティングしようかしら?

214 名前:nobodyさん mailto:sage [2013/05/10(金) 17:37:23.92 ID:???.net]
>>211
Scalaは人気ないし、JavaかC#に移植してほしい。

215 名前:nobodyさん mailto:sage [2013/08/02(金) NY:AN:NY.AN ID:???.net]
djangoを導入して、codezineのチュートリアルが終わりました。
データベースにMySQLを使っているのですが、テーブルの文字セットがlatin1_swedish_ciになっているせいなのか、
日本語のテキストを投入できないのですが、モデルの定義で症状順序を指定する方法はないのでしょうか?

216 名前:nobodyさん mailto:sage [2013/08/14(水) NY:AN:NY.AN ID:???.net]
オブジェクトにプロパティを追加した状態でシリアライズを行いたいのですがどのようにすればいいでしょうか?

django.core.serializers.serializeでシリアライズを行うと、オブジェクトに行った変更が維持されずにシリアライズされてしまいます。

217 名前:nobodyさん [2013/09/18(水) 12:08:44.39 ID:gKUd666P.net]
>>213
UTF8で作り直し

>>214
えっ

218 名前:nobodyさん mailto:sage [2013/09/23(月) 17:58:49.68 ID:???.net]
>>214

pickle.dump は?とか言ってみるテスト

219 名前:nobodyさん [2013/09/24(火) 18:51:53.67 ID:qDsFnzSc.net]
くっそー、すごく使いやすいし良いフレームワークだと思うのに、デプロイがうまくいかなくて腹立つ…
Djangoの問題じゃなくて、Apacheをうまくいじれない俺の問題なんだ…(;´д`)



220 名前:nobodyさん mailto:sage [2013/09/24(火) 18:56:41.79 ID:???.net]
途中でテーブルの列が変わったときと既存のテーブルとどうやって連携させるのかよくわからない

221 名前:nobodyさん mailto:sage [2013/09/24(火) 19:48:22.31 ID:???.net]
apatch捨ててnginx+uwsgiで行こう

222 名前:nobodyさん mailto:sage [2013/09/24(火) 21:31:45.65 ID:???.net]
>>219
俺もその構成だな
なにより軽い

223 名前:nobodyさん mailto:sage [2013/09/24(火) 23:56:34.50 ID:???.net]
>>217だけど

おk、nginxとuwsgiで行ってみる。

224 名前:nobodyさん mailto:sage [2013/09/28(土) 21:38:29.53 ID:???.net]
>>221だけど
うまくいったわ
ありがとう!

225 名前:nobodyさん mailto:sage [2013/09/29(日) 13:33:41.13 ID:???.net]
Python3用のチュートリアルはどこかにないでしょうか?

226 名前:nobodyさん mailto:sage [2013/09/29(日) 19:09:36.11 ID:???.net]
Django1.5の時点ではPython3って実験的サポートじゃなかったっけ

227 名前:nobodyさん mailto:sage [2013/09/29(日) 19:51:23.06 ID:???.net]
そうなんすか?
でもいまさらPython2系というのも後ろ向きな気がしますし…

228 名前:nobodyさん mailto:sage [2013/09/30(月) 02:52:14.59 ID:???.net]
Python2と3の違いなんて微々たるもんじゃん

229 名前:nobodyさん [2013/09/30(月) 11:04:14.98 ID:4crUfdOT.net]
まぁ1.4のドキュメント見ながら、1.5をいじっていけば良いと思うよ。日本語がいいならね。

Python2と3の違いは自分で何とかするなり、わからなかったらここで聞くなり。



230 名前:nobodyさん [2013/10/05(土) 21:53:42.87 ID:rLQ0vSt3.net]
social authがうまく動かなくてぐぬぬってなっとる

231 名前:nobodyさん mailto:sage [2013/10/07(月) 22:48:06.70 ID:???.net]
Django Social Auth、Django1.4だと
<a href="{% url socialauth_begin 'twitter' %}">ログイン</a>
で動くけど、1.5なら
<p><a href="{% url 'socialauth_begin' 'twitter' %}">ログイン</a></p>
じゃないと動かないのね…。

232 名前:nobodyさん mailto:sage [2013/10/10(木) 08:22:16.60 ID:???.net]
<p>タグなしだと動かんって、こりゃハマるわw

233 名前:nobodyさん mailto:sage [2013/10/10(木) 13:43:57.07 ID:???.net]
え?

234 名前:nobodyさん [2013/10/12(土) 10:14:16.07 ID:katzcLBA.net]
ごめん、pタグの有無が問題なんじゃなくて、 url って文字列をクォーテーションで囲むかどうかが問題なんだ。ごめん。

235 名前:nobodyさん [2013/10/12(土) 10:15:05.96 ID:katzcLBA.net]
urlじゃねぇや、socialauth_beginって文字列な。

236 名前:nobodyさん mailto:sage [2013/10/22(火) 17:34:54.08 ID:???.net]
いままでPHPのWebフレームワークしか使ったことないけどrailsは以外に簡単だった
Djangoは難しすぎる
まず、コントローラとViewとルーティングの3つすら全然わからない

237 名前:nobodyさん mailto:sage [2013/10/22(火) 20:21:30.74 ID:???.net]
それはいくらなんでもレベル低すぎないか・・・

238 名前:nobodyさん [2013/10/25(金) 13:21:28.78 ID:upIsqz91.net]
とりあえずわかんなくても、1.4のドキュメントのチュートリアルを一通りやればいいと思う。
で、それをもとに改変していけばそのうち慣れるんじゃない?

239 名前:nobodyさん mailto:sage [2013/10/26(土) 18:58:50.65 ID:???.net]
djangoで一からアプリ作るのは意外とわかりやすい。
でもアプリをいろいろ組み合わせようとすると大変なことになる。
djangoのバージョンも迂闊にあげられないし。
ショッピングサイトをsachimoベースで作ってるが、
一から自分で書いた方が早いんじゃないかと思えてきた。



240 名前:nobodyさん mailto:sage [2013/10/26(土) 19:05:11.06 ID:???.net]
>>237
DjangoはRailsにならって、レールに沿ったやり方で開発する前提でしょ。どんなフレームワークでもそうだけど、特に。
レールから外れるなら、フレームワークよりライブラリ組み合わせるのが普通だと思う。

241 名前:nobodyさん mailto:sage [2013/10/26(土) 20:16:45.45 ID:???.net]
>>237
それはDjangoというよりSatchmoの問題じゃなかろうか
他人の作ったAppを利用するのは思ったより面倒だからなぁ

242 名前:234 mailto:sage [2013/10/27(日) 11:53:23.07 ID:???.net]
マニュアルのみてもわかんない
これMVCじゃないよね

243 名前:nobodyさん mailto:sage [2013/10/27(日) 13:56:07.27 ID:???.net]
MTV a.k.a MVC

244 名前:nobodyさん mailto:sage [2013/10/27(日) 15:11:56.59 ID:???.net]
>>240
マニュアルにViewがControllerだって書いてなかったっけ。

245 名前:nobodyさん mailto:sage [2013/11/01(金) 19:41:43.32 ID:???.net]
>>240
馬鹿には無理

246 名前:nobodyさん mailto:sage [2013/11/10(日) 13:18:25.05 ID:???.net]
RailsやCakeを経て最近使い出したけどDjangoのORMって素敵だな
データベースありきじゃなくてちゃんとモデルが主役というか
今までDBの奴隷だったのが解放された感じ

247 名前:nobodyさん [2013/11/12(火) 02:25:04.60 ID:W3f6KAuy.net]
Django1.6ですよみなさん

248 名前:nobodyさん mailto:sage [2013/11/12(火) 05:46:48.93 ID:???.net]
>>245
settings.pyがシンプルすぎて目を疑った
でもuwsgiで動かそうとすると jingo ちゃんのせいでえらーになる

249 名前:nobodyさん mailto:sage [2013/11/12(火) 15:28:40.85 ID:???.net]
いつになったら1.4の翻訳は終了しますか?遅くないですか?



250 名前:nobodyさん mailto:sage [2013/11/12(火) 15:32:11.85 ID:???.net]
https://docs.djangoproject.com/en/1.6/topics/http/urls/
このぐらいの量なら1日1見出し分のゆっくり翻訳でも一ヶ月で終わりますよ
コミュニティがあまり活発ではないのでしょうか?

251 名前:nobodyさん mailto:sage [2013/11/12(火) 17:20:28.66 ID:???.net]
1.0からとか使ってる人は、大きな変更点さえ日本語であれば、後は英語でも困らないんじゃないか。
困ってるなら、あなたがやってもいいのよ。

252 名前:nobodyさん mailto:sage [2013/11/12(火) 21:08:41.51 ID:???.net]
別のフレームワークの日本語訳で忙しいから俺はやらないよw

253 名前:nobodyさん mailto:sage [2013/11/13(水) 01:25:01.46 ID:???.net]
なぜ英語も読めないのか?まずはそこを反省すべきではなかろうか

254 名前:nobodyさん [2013/12/06(金) 20:28:11.08 ID:VQsT5HYM.net]
Python3どうでしょう

255 名前:nobodyさん mailto:sage [2013/12/07(土) 04:58:47.30 ID:???.net]
とりあえず問題なくつかえてる

256 名前:sage [2013/12/07(土) 17:27:24.49 ID:gAFb5wMQ.net]
>>250
どのフレームワーク?証拠見せろよw

257 名前:nobodyさん mailto:sage [2013/12/13(金) 12:15:36.58 ID:???.net]
1.6でPython3対応したことを知って学び始めてるんですが、
https://docs.djangoproject.com/en/1.6/topics/auth/customizing/
のA full exampleのuser = self.model(…)の意味がわかりません
BaseUserManagerの中にmodelっていうメゾッドがあるんですか?

258 名前:nobodyさん mailto:sage [2013/12/13(金) 13:31:51.00 ID:???.net]
BaseUserManagerが継承しているManagerの中にmodelが定義されている
ドキュメント読んで疑問点が出たら django のソースを見るのが一番
たしかにそのあたりはちょっとややこしいけど・・・

259 名前:nobodyさん mailto:sage [2013/12/13(金) 14:56:46.43 ID:???.net]
ありがとうございます
こんなに早く回答がもらえるとは思ってなかった



260 名前:nobodyさん mailto:sage [2013/12/19(木) 13:42:20.81 ID:???.net]
1.5でカスタムユーザ追加されたらしいですけどその前はどうしてたんです?

261 名前:nobodyさん mailto:sage [2013/12/19(木) 15:10:00.19 ID:???.net]
>>258
profile使ってた。

262 名前:nobodyさん mailto:sage [2013/12/19(木) 15:41:05.68 ID:???.net]
カスタムユーザが便利すぎてもうprofileには戻れない

263 名前:nobodyさん mailto:sage [2014/01/18(土) 18:04:24.93 ID:???.net]
開発中にview内でprintで変数の中身を確認してるのですが本番環境でprintを消し忘れると
[Errno 5] Input/output error
で落ちてしまいます
これを回避する方法は無いのでしょうか?

264 名前:nobodyさん mailto:sage [2014/01/19(日) 01:49:06.58 ID:???.net]
logging使おう

265 名前:nobodyさん mailto:sage [2014/01/21(火) 05:07:03.69 ID:???.net]
それはloggingを使って変数の中身を出力して確認するという事なのでしょうか
それともprintが出力するはずだった情報をloggingが受け取る?ことでエラーが発生しないというなんでしょうか

あと、もし500を返すような致命的エラーが出たらメールで管理者に送る機能しか無くて、ファイルにlogとして残せないですよね?
メール送るところを自分で改変してログに残せそうな気もするんですがちょっと敷居が高過ぎます

www.18th-technote.com/post/5352244742/django-process-exception
今は上記を参考にviewで発生したエラーはprocess_exceptionで補足できてるんですが、
templateでもしエラーが起きたら補足できません
これデフォルトでなぜ付けないんだろうといつも疑問に思ってます

266 名前:nobodyさん mailto:sage [2014/01/21(火) 09:23:00.68 ID:???.net]
>>263
uWSGI だとまず >>261 の状況が発生しないのだけど
使ってる環境(サーバ)はなあに?

ちなみに、printで標準出力に出したものは uWSGIのログにも出力されるよ

267 名前:nobodyさん mailto:sage [2014/01/22(水) 21:52:13.79 ID:???.net]
>>264
gunicornです
gunicornでログを生成するようにしたらprintの内容が出力されてエラーが出なくなりました!
Django本体のログのことしか頭に無かったです
ヒントありがとうございます 大変助かりました

268 名前:nobodyさん [2014/01/25(土) 07:08:02.10 ID:HM5WIj95.net]
このスレでuWSGIを初めて知ったのですが良さげなんでしょうか
Djangoと言えばnginx+gunicornの組み合わせしか知らないんですが最近気になってます

269 名前:nobodyさん mailto:sage [2014/01/28(火) 23:39:54.41 ID:???.net]
同じくこのスレでuWSGIを知ったのですが、uWSGI+nginxにするとapacheに比べて
どの辺が嬉しいんでしょう?



270 名前:nobodyさん mailto:sage [2014/01/29(水) 17:12:34.45 ID:???.net]
Appach
潤沢なメモリがあるサーバならApacheでも良い
枯れているし対応する拡張も多い
でも兎に角メモリイータでリソースに厳しい

uWSGI
馬鹿っ速い・先進的な機能がテンコ盛り・省リソースで動く

271 名前:nobodyさん [2014/02/07(金) 23:56:26.65 ID:NNxPDh1r.net]
railsだのDjangoだのいじってる人はApache使わない印象

272 名前:nobodyさん mailto:sage [2014/02/13(木) 04:25:53.66 ID:???.net]
pyodbc.connect("DSN=hoge")
を含む関数を
manage.py shellから呼んでも通るんですが、
本番環境だとApacheがsegmentation fault(11)を吐きます
上記関数を含まない他のviewは問題なく表示できます。
どこらへん調べたらいいですか?

Ap

273 名前:acheでmod_wsgiをdaemonモードで使っててDjango1.6です []
[ここ壊れてます]

274 名前:nobodyさん mailto:sage [2014/02/23(日) 22:30:46.68 ID:???.net]
ここえらい過疎だな・・・
RoRに比べて日本語の情報も少ないし、Django弄ってる日本人少ない?
RoRに浮気したいけど、初心者に厳しいとも聞くし

275 名前:nobodyさん mailto:sage [2014/02/24(月) 03:31:27.40 ID:???.net]
>>271
問題ないから話題がないとも。
閉鎖的な日本ではログインシステムが標準てのはいいかもね。

276 名前:nobodyさん mailto:sage [2014/02/24(月) 12:07:32.49 ID:???.net]
Web用にPython選ぶメリットって今は殆ど無いからね

277 名前:nobodyさん [2014/02/24(月) 14:39:31.70 ID:Grf2Q2cg.net]
Pythonは初心者がマルチバイト文字で詰まって投げ出してるイメージ
英語圏は楽でいいよな

278 名前:nobodyさん mailto:sage [2014/02/24(月) 20:18:43.30 ID:???.net]
あるわ

279 名前:nobodyさん mailto:sage [2014/02/24(月) 21:38:54.89 ID:???.net]
今日からDjango始めてみたんだけど、Viewの部分が面倒くさくない?



280 名前:nobodyさん mailto:sage [2014/02/25(火) 02:26:27.38 ID:???.net]
>>276
何と比べてるのかわからないが、標準View使えば。

281 名前:nobodyさん mailto:sage [2014/02/25(火) 06:29:04.41 ID:???.net]
面倒くさいと感じたことはないな
そもそもDjangoに限らずViewの部分なんて難しい処理とかないじゃん

282 名前:nobodyさん mailto:sage [2014/02/25(火) 16:06:21.05 ID:???.net]
Pythonで変数が設定されているか調べるにはどのようにすればいいですか?
PHPでいう、if(isset($var)){}のような事をしたいのですが

283 名前:nobodyさん mailto:sage [2014/02/25(火) 16:10:25.31 ID:???.net]
ごめんなさい、スレを間違えました

284 名前:nobodyさん mailto:sage [2014/02/25(火) 16:37:36.90 ID:???.net]
以下良くあるmysiteで書くけど、
Viewってmysite/mysite/urls.pyに毎回わざわざurlpatternsを書かないといけないの?
(r'^myapp/$', 'myapp.views.index')とか

また、アプリケーションとしてmyappを追加した場合、mysite/myapp/views.pyに毎回def index(request):context="" return HttpResponse(render())みたいな長ったらしいのを書かないといけないんでしょ?
で、テンプレートはmysite/template/myapp/以下にindex.htmlとして入れると

Smartyみたいに$view->assign();や$view->display()だけでいけるように設定できれば楽なんだけど

285 名前:nobodyさん mailto:sage [2014/02/25(火) 21:06:50.68 ID:???.net]
Djangoの設計概念の理解不足だと思う
とは言えドキュメントにこのあたりは纏まって書いてないので
ひと通りやらないと分からないのはちょっと不親切だったりする

まず"Djangoアプリ 再利用" とかでググってみておくれ
urls.pyにまとめてurlを書く利点はページのURL配置に自由度を持たせる為

viewの指定については、django.shortcuts.render でも使えばいい
それか同じように毎回書くのが面倒ならそのラッパを好きに自分で作る。

テンプレートの場所も設定で変更できる。
開発時の問題ならシンボリックリンクでも貼っておけば良い。

286 名前:nobodyさん mailto:sage [2014/02/25(火) 21:56:01.64 ID:???.net]
なるほど、ちょっと調べてみるね

それともう一つ質問あるんだけど、
例えばHTMLのフォーム(form.html)からanalyze.pyへ移動し、
そこでフォームのバリデーションなんかしたりしてから別のHTMLページに飛ばしたい場合は、
<form action="./analyze.py">でどのように指定すればいいの?
例えテンプレートform.htmlがanalyze.pyと同じディレクトリにあっても相対パスが適用されないよね?

CSSやJSの外部ファイルの読み込みの際にワケが分からなくてハマったんだけど
コレは/static/ディレクトリを作成し、その中に入れてなんとかなった

Djangoではマニュアルとか読んでてもModelがDBからみの事をいうような書かれ方してるけど、
自分は外部ライブラリなどもModelだと認識してる
analyze.pyのような関数やクラス群はどこに置いて、どのように指定すればいいの?

287 名前:nobodyさん mailto:sage [2014/02/25(火) 22:34:11.12 ID:???.net]
PHPはファイルの場所と名前からURL情報が作ら

288 名前:れる。
まずこれを綺麗サッパリ忘れてくれ。

Djangoでは まずURLを登録し、そのURLで実行する処理を指定する。
例えば urls.py に /hoge/ へのアクセスは myapp/views.py の hoge(request) で処理せよという感じで指定する。
換言すれば、urls.py に登録ないURLへはアクセスできない。

Formの処理については 日本語のドキュメントにサンプルがある。
それをまず真似て作ってみる。いきなりDjangoの流儀と違うやり方で実装しようとしないでまずはサンプルの理解から。

別のページに飛ばすのは redirect を使えばよいし、
analyze.pyに書いた処理でバリデーションしたければ、Formのバリデート処理に、analyze.py を import して使えばよい。
また、<form action="xxx">にForm表示とは違うURLを指定することも可能だが、そのURLは当然 urls.py に登録済みでなければ駄目だよ。

>自分は外部ライブラリなどもModelだと認識してる
違う
[]
[ここ壊れてます]

289 名前:nobodyさん mailto:sage [2014/02/25(火) 23:39:29.25 ID:???.net]
教えてくれてありがとね

analyze.pyを{{STATIC_URL}}内に入れてaction部にanalyze.pyを記述しフォームを実行したらanalyze.pyのダウンロードが始まったw

なるほど、Djangoって結構ガチッとしたFWなのかな
FWはZendFrameworkくらいしか使ったことないんだけど、アレは最初のコントローラー部で迷った以外はライブラリ感覚で使えたし、フォームなんかも無視して自分で実装しても問題なかった
対してcakePHPはガチッとしてると聞いた
ライブラリ感覚ならTurboGearの方がいいとか数年前読んだけど

自分としては、PythonはApache連携やら、フォームを作成後ブラウザからスクリプトを起動させるのが面倒くさいから、Django使おうって位の軽いユーザーのつもりだったんだけど、思った以上にブラウジングが面倒くさいなぁと
もうちょっと頑張って学習してみる



><form action="xxx">にForm表示とは
>違うURLを指定することも可能だが、
>そのURLは当然 urls.py に登録済みでなければ駄目だよ。

ココがちょっと分かんないんだけど、
mysite/libs内にanalyze.pyを入れたとして、
それらのディレクトリ、ファイルなど外部ファイルにアクセスするのにわざわざURL登録しないといけないの?
HTML,つまりViewを必要としないpythonファイルをディスパッチ、レンダリングするというなら、その方法が見当も付かないんだけど...
混乱してるなぁ...うぅむ...



290 名前:nobodyさん mailto:sage [2014/02/26(水) 00:25:11.85 ID:???.net]
{{STATIC_URL}} 静的なファイルを置く場所 JavaScript cssファイル 画像ファイル etc
{{MEDIA_URL}} ユーザがアップロードしたファイルを置く場所
上記にプログラムファイルを置いても駄目。
既に経験済みの様だが、プログラムファイルは実行されずダウンロードされてしまう。

>HTML,つまりViewを必要としないpythonファイルをディスパッチ、レンダリングする・・・
urls.pyには正規表現が使える。
たとえば url(r'^hoge/(?P<pagename>[a-zA-Z0-9]+).html$', 'mysite.views.nonview', name='nonview')
と定義すれば /hoge/foo.html や /hoge/bar.html といったURLを mysite/viers.py の nonview関数で処理できる
nonview関数ではpagename引数に入ったHTMLファイル名を 任意のディレクトリから呼び出し
HttpResponse 等で出力すればよい (もちろん任意のテンプレートでラップしてもよい)

または 静的HTMLの表示に全くDjangoを通さないくて良ければ {{STATIC_URL}} 以下にHTMLファイルを配置し
表示処理は HTTPServer にまかせてしまう

291 名前:nobodyさん mailto:sage [2014/02/26(水) 00:48:09.44 ID:???.net]
毎回毎回本当にありがとね
View部分の面倒くさい記述は教えてもらったので検索したりして何とかなった

慣れないとDjangoって難しいんだね
今んとこディスパッチャの部分が特に
皆自分で学んでいったんだろうけど、凄いなぁ

自分としては、
foo.htmlフォームの実行
-> analyze.pyよりフォームで送られてきたデータのバリデーションとデータベース接続、登録
-> リダイレクト
-> bar.html
というごく一般的なフォームの挙動を行おうとしただけでこれだけ悩んでる


{{STATIC_URL}} 静的なファイルを置く場所 JavaScript cssファイル 画像ファイル etc
{{MEDIA_URL}} ユーザがアップロードしたファイルを置く場所
上記にプログラムファイルを置いても駄目。
既に経験済みの様だが、プログラムファイルは実行されずダウンロードされてしまう。


>nonview関数ではpagename引数に入ったHTMLファイル名を 任意のディレクトリから呼び出し
>HttpResponse 等で出力すればよい (もちろん任意のテンプレートでラップしてもよい)

と言う事は、Djangoでは/lib/などの外部ファイル(admin.pyやsetting.pyなどではなく、myfunctions.pyのようなもの)は使えず、処理を行いたい挙動はnonview関数内にPythonスクリプトを書いていくということになるんだね?
なるほど

292 名前:nobodyさん mailto:sage [2014/02/26(水) 07:45:04.05 ID:???.net]
質問者はMVCが理解できていない

293 名前:nobodyさん mailto:sage [2014/02/26(水) 08:06:17.61 ID:???.net]
docs.djangoproject.jp/en/latest/misc/design-philosophies.html
d.hatena.ne.jp/shuji_w6e/20090514/1242227504
まずこのあたりに目を通してはどうだろうか

294 名前:nobodyさん mailto:sage [2014/02/26(水) 21:53:50.81 ID:???.net]
Two scoop of django 1.6のkindle版マダー?

295 名前:nobodyさん [2014/02/26(水) 22:48:12.48 ID:LOhj6Qup.net]
例えば日毎に複数モデルからデータを持ってきて表示するカレンダーを作る場合、
Manager:date等を指定してのクエリ(戻り:QuerySetや集約後のデータ)
View:Calendar.monthdatescalendarのような構造の配列を作る
    それぞれのモデルのManagerを呼んでデータ取得
    配列にはモデルから取得したデータをまとめた辞書を入れる
Template:forループで上の配列を回してhtmlにする

こんな感じで合ってますか?

不安な点:
・クエリを書く場所(View?Manager?)
・View内でコードを書く場所
   今はgetメソッドに直接書いていますが、getは弄らずにメソッドに書いてそれをテンプレートから
   呼んだ方が(view.hoge的な)いいのでしょうか?それとも別ファイルに関数を書くべきですか?
・現在はデータをループしやすいような配列にしてから渡してますが、Template内である程度HTMLにした方がいいのか?
  ※formは軽くタグとか付けられますよね
ネットでサンプルを探してはみたのですが、今一これが正解!的なコードが見つからなくて・・・
あと設計の参考になりそうな良いサイトってありますでしょうか?

296 名前:nobodyさん mailto:sage [2014/02/26(水) 22:50:32.75 ID:???.net]
>・現在はデータをループしやすいような配列にしてから渡してますが、Template内である程度HTMLにした方がいいのか?
Template内で → View内で
でした

297 名前:nobodyさん mailto:sage [2014/02/27(木) 01:08:04.43 ID:???.net]
単純なデータ取得、たとえば pkを指定してレコード取得や一覧取得はView
ビジネスロジックと言われるような中枢を成す処理はmodelまたはlogics.pyとか別ファイルにする
Djangoのポリシーではテンプレート内でデータは加工しない
テンプレートはデザイナーが触るものでプログラマーが触るものではない
よってデータの加工はviewでやる
getメソッド?なにそれ

298 名前:nobodyさん mailto:sage [2014/02/27(木) 05:14:32.62 ID:???.net]
>>291
俺ならインタフェースだけ合わせて、template内で同じように見えるようにしてiteration。

299 名前:nobodyさん mailto:sage [2014/02/27(木) 06:00:14.57 ID:???.net]
<select><option value="foo">bar</option></select>
のような形を作るにはどのようにすればいいのでしょうか?
class yes(forms.Form):
bar = forms.ChoiceField(
widget = forms.Select()
)
で、セレクトバーは出たんですが、その後の<option>の指定方法がわかりません
自分はHTMLで{{form.bar}}のようにしています



300 名前:nobodyさん mailto:sage [2014/02/27(木) 06:01:32.60 ID:???.net]
すみません、barじゃなくfooでした

301 名前:nobodyさん mailto:sage [2014/02/27(木) 10:04:22.81 ID:???.net]
>>296
choices






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<222KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef