トップページphp
314コメント104KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2011/12/15(木) 23:47:02.03ID:???
LL言語「Python」で実装されたWebフレームワーク Django
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
0008nobodyさん2011/12/26(月) 14:56:38.54ID:???
22 Dec django 1.4 alpha 1 released
ttps://docs.djangoproject.com/en/dev/releases/1.4-alpha-1/

Porting 2.x code so that it runs on 2.x and 3.x from a single codebase
ttps://code.djangoproject.com/wiki/PortingNotesFor2To3

Proposal: drop Python 2.5 support in Django 1.5
ttp://groups.google.com/group/django-developers/browse_thread/thread/a5e642c0e5fd6626
0009nobodyさん2011/12/26(月) 15:15:53.68ID:???
>>7
ありがと
8000と8080で頑張るわ
0010nobodyさん2011/12/26(月) 15:48:49.02ID:???
補足で、ポートを分けた方がいい理由としては、もうひとつ。

同じポートだとブラウザのキャッシュのアドレスが混ざってしまい、
別アプリ側のキャッシュを読んでしまう可能性があります。
0011nobodyさん2011/12/27(火) 06:06:43.86ID:???
ラインハルトさま
0012nobodyさん2011/12/27(火) 19:32:02.12ID:???
googleトレンドでフレームワークの比較したしたに
密かに django の数を支えてくれてるかも知れないお方ですね(違
0013nobodyさん2012/01/02(月) 04:48:35.54ID:???
>>11
生きる権利を行使するなら
それに見合った義務を果たせ
0014nobodyさん2012/01/03(火) 09:37:05.06ID:???
複合キーが使えないとかアホすぎる。、
0015nobodyさん2012/01/04(水) 21:31:19.42ID:???
同じ汎用ビューを複数使うとPaginatorを見るときに
最後のものを参照してしまうのですがどうすればいいでしょうか?

例えばurlsのところで
(r'^/A/(?P<page>[0-9]+)/$',
'django.views.generic.list_detail.object_list',
dicA),
(r'^/B/(?P<page>[0-9]+)/$',
'django.views.generic.list_detail.object_list',
dicB),

としたときに
A/1/のところでPage.next_page_number()を見ると
B/2/に飛んでしまいます。
0016nobodyさん2012/01/08(日) 19:07:42.92ID:???
djangoって2chじゃぜんぜん盛り上がってないですね
0017nobodyさん2012/01/09(月) 10:09:58.37ID:???
>>16
基本的に仕事ないからな
0018nobodyさん2012/01/10(火) 00:56:59.16ID:???
pythonで仕事できる会社少ないイメージあるね。
一度はpythonで食ってみたいもんだが。
0019nobodyさん2012/01/14(土) 12:34:09.69ID:???
あまりに過疎りすぎるとフレームワークやらライブラリが発展しなくなるのが心配。
海外ではそれなりに活性化されてるのかな?
0020nobodyさん2012/01/15(日) 16:43:29.95ID:???
日本はjavaかphpだけだよな
pythonのwebフレームワークはdjangoが一番無難とおもう
0021nobodyさん2012/01/21(土) 04:24:28.26ID:???
Djangoのルールに乗っかれないとバッドノウハウの塊になっちゃうのがなぁ。
(認証でUserテーブルを独自に定義したい場合とか)

他にいいフレームワークないですかね。
Flaskって奴もよさそうだけど、ちょっと軽量すぎる・・・

TurboGearsはどうなんだろう。

それとも素直にRailsとかCakePHP使っとくべきですかね。
0022nobodyさん2012/01/21(土) 04:47:17.81ID:???
Pylonsってのもあるのか。
0023nobodyさん2012/01/21(土) 07:22:45.45ID:???
pylonsはオワコン
pyramid
0024nobodyさん2012/01/21(土) 07:23:25.54ID:???
>>21
werkzeug
0025nobodyさん2012/01/22(日) 21:23:50.03ID:???
>>21
それはどんなフレームワークでも同じじゃね?
0026nobodyさん2012/02/07(火) 23:14:28.71ID:???
django-cmsって使ってる人いる?
0027nobodyさん2012/02/09(木) 22:59:21.30ID:lRLr0cSK
サーブレットのように、あるリクエストで生成したインスタンスを
レスポンスが完了した後も残しておくことって出来ないですか?

出来ない場合、同じようなことをやろうと思ったらキャッシュ機能を
使うしかないですかね?
キャッシュだとシリアライズのコストの分が余計にかかるので
できればサーブレットのようにプロセスが常駐してインスタンスを
そのままメモリ上に持たせておきたいと思ったのですが・・・
0028nobodyさん2012/02/09(木) 23:21:54.04ID:/iRWC1gw
タコですが質問です。

djangoって静的ファイルはhttpdでやれよって思想だと思うんですが、
セッション管理によるアクセス制限
(例えばdjangoでログイン中のみapacheから静的ファイルにアクセスできるようにする)
っていう仕組みはどのように実装したらいいんでしょうか?
0029nobodyさん2012/02/09(木) 23:24:12.52ID:/iRWC1gw
>>27
私はタコですがセッションのどこかに放り込んでおけばいいのでは?
http://docs.nullpobug.com/django-doc-ja/trunk/topics/http/sessions.html#topics-http-sessions
0030nobodyさん2012/02/10(金) 04:07:32.68ID:???
>>27
memcached
0031nobodyさん2012/02/17(金) 18:11:15.99ID:???
この本読んだひといますか?
感想聞かせてください

WSGIウェブプログラミング
ttp://www.amazon.co.jp/dp/4877832882/

書評悪すぎてわろす
0032nobodyさん2012/02/19(日) 09:53:00.31ID:???
URLディスパッチャがめんどくさすぎる
0033nobodyさん2012/02/20(月) 09:54:33.74ID:???
>>28
djangoの「思想」は無視すればいいと主受け尾d。
URLに対応するファイルを読み込んでユーザチェックで分岐して
renderする処理を加えればいいだけじゃないの。
簡単にできるでしょう。
0034nobodyさん2012/02/20(月) 10:17:08.89ID:???
主受け尾d、ってなんだ・・タイポした

なお、djangoのstatic拒否っていう「思想」は別に珍しくなくて、
ホントにstacicならサーバにまかせます、っていうだけでしょ。

日本語の1.0 documentation読んでるとなんかすげー厳しいなあと思うかも知れないけど
1.3documentationの
https://docs.djangoproject.com/en/dev/howto/static-files/
を読めば1.0にはなかった
django.contrib.staticfiles
っていう仕組みもある。
0035nobodyさん2012/03/06(火) 19:10:17.43ID:???
Modelから作るフォーム、ModelFormで初期値を設定する事はできませんか?

-- model.py
class Shops(models.Model):
id = models.IntegerField(primary_key=True)
shop_name = models.CharField(max_length=765, verbose_name=u"店舗名称")

class ShopDetails(models.Model):
shop = models.ForeignKey(Shops,primary_key=True, verbose_name=u"店舗名称")
prefecture = models.ForeignKey(Prefectures, verbose_name=u"都道府県")

こういう二つのモデルがあって、ShopDetailsのフォームを

-- forms.py

class ShopDetailForm(ModelForm):
class Meta:
model = ShopDetails
exclude = ('shop',)

として、定義してます。
/shops/detailadd/12/
とかでidが12番を指定されている時は
いちいち、shopを選ぶフォームを出力したくないので
既にshopの中身に12番を入れておきたいのですが…

伝わりにくい質問でごめんなさい。
0036nobodyさん2012/03/06(火) 19:21:31.04ID:???
defaultとかあったと思うが,Metaでやるとできないか
JavaScriptでやるか,12をテンプレートでレンダ
0037nobodyさん2012/03/06(火) 22:42:25.29ID:???
>>36さん

レスありがとうございます。
<input type="hidden" name="shop" value="{{ shop_id }}>
みたいなテンプレートでやってみたんですが、Validateでエラーになってしまったもので...

Djangoマニュアルの英語版も読んだんですが、こういうところが書かれてないんですよねぇ。
どこかノウハウが集まってるサイトとかないんでしょうか。

みなさんはDjangoの情報収集はどこでされてますか?
GoogleのDjangoグループは全然更新されてないんで、困ってます...
0038nobodyさん2012/03/08(木) 20:42:59.17ID:???
たしかフォームクラスの__init__()でself.fields["fieldname"]に値いれればいけたと思う

この例だと

class ShopDetailForm(ModelForm):
 class Meta:
  model = ShopDetails
  exclude = ('shop',)

 def __init__(self, *args, **kwargs)
  shop_id = kwargs.pop( 'shop_id', None )
  super( ShopDetailForm, self ).__init__( *args, **kwargs )
  self.fields["shop"] = shop_id

かな
shop_idを与えてShopDetailFormを呼ぶ形で
0039nobodyさん2012/03/08(木) 23:23:35.64ID:???
ごめん嘘書いてた

class ShopDetailForm(ModelForm):
 class Meta:
  model = ShopDetails

 def __init__(self, *args, **kwargs)
  shop_id = kwargs.pop( 'shop_id', None )
  super( ShopDetailForm, self ).__init__( *args, **kwargs )
  if shop_id:
   self.fields["shop"].initial = shop_id

なんしかself.fields["hoge"]をイジれば動的にフィールドを操作できます
0040nobodyさん2012/03/12(月) 10:05:17.14ID:C6qcHZnA
Django1.2を使ってます
テンプレートの使い方で質問していいでしょうか?
ちょっと困ってます

dataA.dataB[0].dataC を取り出す方法です。

[0]という表記がシンタックスエラーを出すので調べたらスライスフィルタを使えと

dataA.dataB|slice:"0:1" これだとdataBは取り出せますがここから詰まってます

どうか解決法をご存知の方ヒントをお願いします。
方法がなければデータそのものを加工して対処します。
0041nobodyさん2012/03/12(月) 15:15:04.03ID:???
簡単なマッパーかますのが一番楽じゃないかな
http://tokibito.bitbucket.org/bpmappers/
これとかオススメ
0042nobodyさん2012/03/12(月) 15:23:09.23ID:C6qcHZnA
うわーー 最初からこれ使えばよかったーーー
0043nobodyさん2012/03/12(月) 23:05:19.96ID:7b+JBvuO
テーブル生成についての質問なのですが
djangoでテーブルを動的に生成することってできますか?

ユーザ情報(これはカラム固定)がDBに入っていて
そこからある計算を行ってデータを作るのですが
それがカラム数が動的に変わってしまうのです

要するに動的に create を発行すればいいのですが
djangoの場合だとモデルクラスが対応してないとダメですよね…
というよりモデルクラスが先にあって、そこからテーブルを
作成するのが基本ですよね…

なにかうまい方法はないでしょうか…?
(すみませんが設計で回避というのは無しでお願いします)
0044nobodyさん2012/03/13(火) 03:34:44.28ID:???
発想を変えて動的にモデルをつくるようにしてみては?
モデルのプロパティはJSONとかにシリアライズしてblobで保存とか
MongoDBとかでも動的に変更できるけど茨の道
0045nobodyさん2012/03/21(水) 00:32:52.23ID:???
いよいよDjango1.4正式版でるね
0046nobodyさん2012/03/21(水) 03:08:20.87ID:???
なにが変わるの?
0047nobodyさん2012/03/21(水) 15:05:16.44ID:???
結構機能追加されてんね
1.3のデータベース周りの大幅アップデートに比べると霞むけど
テンプレートタグのelifは有難すぎ
0048nobodyさん2012/03/23(金) 17:41:38.22ID:???
djangoが楽すぎて他のフレームワークいじる気力なくなる
0049nobodyさん2012/03/27(火) 17:54:08.18ID:???
django使ってるのって、日本で10人ぐらい?
0050nobodyさん2012/03/28(水) 07:08:10.63ID:???
すごい優れたフレームワークだと思うので実践投入しようとしてるんだけど。

和書は1.0前のしかないし、Django Book 2.0すら和訳途中で頓挫してるし…
Googleグループも過疎ってるし。日本語で情報共有できないのが辛い。
英語だけどKindleの電子書籍はいっぱい売ってるし、海外フォーラムでは話題が多いんだよね。

逆に、今なら日本語Django界で名を挙げるチャンスなの?w

githubとかでもいいからDjango使っているプロジェクトとかソースコード読んで参考にしたい。
誰か情報共有してくれー!
0051nobodyさん2012/03/28(水) 10:08:47.56ID:???
そもそもPython使ってる人が日本に20人ぐらいしかいないから。
0052nobodyさん2012/03/28(水) 11:50:18.09ID:???
俺もいるから21人だな
0053nobodyさん2012/03/28(水) 13:38:31.77ID:???
いや、お前入れて20人だから
0054nobodyさん2012/03/28(水) 13:39:31.42ID:???
こういう地域による過疎フレームワークってどうやって情報共有すればいいんだろうね
0055nobodyさん2012/03/28(水) 13:54:02.73ID:???
英語読めれば問題ない
0056nobodyさん2012/03/29(木) 12:41:43.24ID:???
電気無ければただの箱的な?
0057502012/03/29(木) 16:31:42.56ID:???
Django使うような奴らは国内なんかが住処じゃねーって!?

日本じゃ王道はRubyでRails。
Pythonなんかインデント言語って馬鹿にされて、
日本じゃ誰も評価されないDjango使う馬鹿は相手が世界ってことか?

面白いじゃないの!実践投入させてもらうぜ!
0058nobodyさん2012/03/29(木) 17:30:04.77ID:???
世界目指そうぜ
0059nobodyさん2012/03/29(木) 17:54:31.44ID:???
ケータイサイトとか作るんじゃなければいいかもね。
今さらケータイサイトとか作ってる場合じゃないけどな。
0060nobodyさん2012/04/01(日) 02:28:54.90ID:2batclMo
ええと…

class input_data:
class output_data:
class hoge:
def calculate(input_data data):
return output_data

djangoとは別にこんなモジュールがあったとして(これ自体はcui上で動く)、これをdjangoを使って
webアプリにしたいんですが、その場合にinput_dataとoutput_dataをDB経由で処理するには
どうしたらいいでしょうか?

hogeはviews.pyから呼べばいいと思いますが、input_dataとoutput_dataは、これらと全く同じ
モデルクラスを作り直すしかないですかね
でもそうなると結局hogeも作り直す必要がありますよね・・・・

できれば既にあるソースを流用したいんですけど、そういうことをするにはdjangoでは無理ですか?
(ORマッパーがモデルクラスと一体化してるというか)

何かいいアイデアあったら教えてください m(_ _)m
0061nobodyさん2012/04/01(日) 19:41:26.66ID:???
django用にクラス作りなおすしかないんじゃないかな
0062nobodyさん2012/04/01(日) 20:24:12.51ID:???
モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
モデルにdataクラスへの入出力追加するだけだし。
0063nobodyさん2012/04/01(日) 20:44:17.44ID:1e7s1g7e
>>62
> モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
> モデルにdataクラスへの入出力追加するだけだし。

すみません、具体的なイメージが湧かないのですが
例えばinput_dataが

class input_data:
def __init__(self, name, value):
self.name = name # string
self.value = value # integer

こんなクラスだとしたら、これをプロパティにしたモデルクラスって
具体的にどうなるんでしょうか?
0064nobodyさん2012/04/02(月) 08:58:12.36ID:???
データベースへのアクセスはdjangoのORMを使うの?
それとも別に用意されてるの?
0065nobodyさん2012/04/02(月) 23:50:34.00ID:VGFPGSaK
>>64
ORマッパーが先に決まっているわけではないです
djangoのモデルクラスを利用して既にあるデータクラスを
そのまま使える方法があれば一番いいですし
それが無理そうなら別の方法を考える、という感じです。

昨日調べてたらSQLをそのまま発行することは出来るみたいなので、
資産の有効利用を優先するならそれもありかな、と少し考えています。
0066nobodyさん2012/04/03(火) 00:06:10.55ID:???
カスタムマネージャでなんとかなるかも
マネージャをゴリゴリ書く必要あるけれども
ただちっと面倒くさいよね何やるにしても
0067名無しさん2012/04/03(火) 20:20:49.11ID:1QQjv7Jc
寛解に至らない
0068nobodyさん2012/04/05(木) 14:53:34.26ID:zbL83UyR
偉い人へ:
djangoforms の BooleanField で checkboxを出すとHTMLが、
「ラベル □」になちゃうんだけど、「□ ラベル」にするのってどうやるの?
0069nobodyさん2012/04/05(木) 21:04:53.80ID:???
自分はその辺の面倒くさいところテンプレートでやってる
widgetを書く方法もあるけどテンプレートの方がしっくりくる

class Hoge(Model):
 name = BooleanField()

のモデルがあるとしてこのモデルフォームのテンプレート変数名がformだとした場合

{% for field in form %}
<label>{{ field.label}}</label>{{ field }}

みたいな感じで自由に組める
あとはHTMLとCSSでお好きなように

この辺も参考にしてみて
ttps://docs.djangoproject.com/en/dev/topics/forms/?from=olddocs#customizing-the-form-template
0070nobodyさん2012/04/05(木) 22:30:34.63ID:zbL83UyR
>>69
自分でテンプレートに展開するのって自由で素敵ですね。
トライしてみます。偉い人ありがと。
0071nobodyさん2012/04/07(土) 16:34:57.81ID:BeoWQwVe
他のスレで質問したところ、こちらへ誘導されました: http://kohada.2ch.net/test/read.cgi/php/1302598469/725-726
以下、上記URLより再掲です。

---

スクリプト の import と テンプレートの extends とがそれぞれよくわかっておらず、ファイルの置き場所がごちゃごちゃになってしまいます。整理するにはどうすればよいでしょうか。

問題点
● テンプレートの多重継承がうまくできない
operation1.html で {% extends "../master.html" %}
master.html で {% extends "../base.html" %}
とすると base.html が見つからなくなります。どうやら孫にあたる operation1.html からの相対パス ../base.html を探しているようです。
・ テンプレート内の記述を変えずに問題を解決する方法があれば教えてください。
・ django は 最初のバージョンのみでよいので、右記ページのような問題はありません。 http://stackoverflow.com/questions/5263623/templatedoesnotexist-on-python-app-engine-django-1-2-while-template-rendering-re

● import の書き方がわからない
大雑把にいって handler の中身が Controller, libs の中身が Model にあたります。
main.py で handlers1.py を、handler1.py で user_auth.py を、それぞれ import したいです。
・ import 文の書き方を教えてください。__init__.py が必要になるのであれば、内容も教えてください。
0072712012/04/07(土) 16:35:33.15ID:???
ファイル構成は下記のようにする予定です:
- app.yaml
- main.py
- handlers
- - handler1.py
- - handler2.py
- libs
- - user_auth.py
- - main_datastore.py
- template
- - base.html
- - master
- - - master.html
- - - operation1
- - - - operation1.html
...
0073nobodyさん2012/04/08(日) 01:26:13.09ID:???
相対じゃなくて絶対でやるといいよ

相対 {% extends "../master.html" %}
絶対 {% extends "master/master.html" %}

でsettings.pyのTEMPLATE_LOADERSに
'django.template.loaders.app_directories.Loader',

これがついてると各アプリケーション・ディレクトリ内にあるtemplatesというディレクトリを探して"master/master.html"という記述ができるようになります

例:アプリケーション名"app_name"を持つdjangoのディレクトリ構造
app_name
- templates (アプリケーション・ディレクトリ内のテンプレート置き場)
- - app_name
- - - master.html
templates (プロジェクト全体で参照するテンプレート置き場)
- base.html

master.htmlからbase.htmlを継承するには、master.html内に{% extends "base.html" %}でok
このようにアプリケーション毎に分離しextendsしていくと綺麗に分離できるよ
0074nobodyさん2012/04/08(日) 01:27:37.88ID:???
importに関してはhandlersディレクトリとlibsディレクトリ両方に__init__.pyが必要
さらにmanage.pyにlibs/handlersを参照できるように以下を記述

import os
import site
import sys

ROOT = os.path.dirname( os.path.abspath( __file__ ) )
path = lambda * a: os.path.join( ROOT, *a )

prev_sys_path = list( sys.path )

site.addsitedir( path( 'handlers' ) )
site.addsitedir( path( 'libs' ) )

new_sys_path = []
for item in list( sys.path ):
if item not in prev_sys_path:
new_sys_path.append( item )
sys.path.remove( item )
sys.path[:0] = new_sys_path

で各ファイルでのimportを以下のように行える

main.py
from handlers import handler1

handler1.py
from libs import user_auth

検証してないけどこんな感じだよ
0075nobodyさん2012/04/08(日) 02:13:49.24ID:???
それとdjangoの基本的なディレクトリ構造は

project_name
- app_name
- - models.py
- - views.py
- - urls.py
- - templates
- templates
- manage.py
- settings.py
- urls.py

となってますので、可能であればhandlers内とlibs内のそれぞれの1と2を別アプリとして分離し作っていくのがあとあと楽と感じます

project_name
- app1
- - models.py(user_auth.py)
- - views.py(handler1.py)
- - templates
- - - app1
- - - - app1.html
- app2
- - models.py (main_datastore.py)
- - views.py (handler2.py)
- - templates
- - - app2
- - - - app2.html
- templates
- - base.html
0076712012/04/08(日) 10:24:06.17ID:???
>>73-75
回答ありがとうございます。今夜ためしてみます。
0077nobodyさん2012/04/08(日) 23:48:05.79ID:Iqgx/7Sd
なんか馬鹿みたいな質問なんですけど

djangoでwebアプリを作ったときに
定数とか設定ファイルみたいなものを用意して
webサーバー起動時にそれを一度だけ読み込んだら
アプリが終了するまではその値をいつでも参照できるように
しておくことってできないですか?

ちなみにwebサーバーはapacheを使ってます
(apacheとdjangoをmod wsgiで連携)
0078nobodyさん2012/04/08(日) 23:54:59.79ID:???
そいうのはsettings.pyに書いとくといいです
settings.pyにHOGE="hoge"としておくと

from django.conf import settings
settings.HOGE

と言った感じで参照できます
0079nobodyさん2012/04/09(月) 01:35:18.14ID:8JTXJRql
なるほど!
ありがとうございました!
0080nobodyさん2012/04/10(火) 22:13:14.47ID:nA+GylzO
gae/p の blobstoreで、アップロードのついでに POSTした日本語が文字化けする障害って
まだ直っていないようですね・・
何年か前に Google-App-Engine-Japanに障害報告が上がってるのに。
仕事遅いなぁ中の人。

この障害への回避策って、Base64エンコードぐらいでしょうか?
0081nobodyさん2012/04/11(水) 02:44:16.83ID:???
gaeでdjango使うのしんどくない?
0082nobodyさん2012/04/11(水) 10:56:01.11ID:WgNPCZsm
>>81
何とか使ってます。
0083nobodyさん2012/04/13(金) 13:19:14.34ID:0/eMv/lO
超伸びてるし…
>>34
ありがとうございました
0084nobodyさん2012/04/13(金) 13:23:02.97ID:???
phpディスられてる割りにユーザ増えんね…
0085nobodyさん2012/04/13(金) 23:04:56.60ID:???
日本だとrubyに流れるんだろうね
2.x系は日本語の扱い面倒くさいし
0086nobodyさん2012/04/13(金) 23:40:44.62ID:???
ruby使ってる人=はてな民=常に上から目線みたいなイメージがあって、どうもrubyに触手が動かない
0087nobodyさん2012/04/14(土) 00:46:37.29ID:???
>>84
戦車に例えると
PHP4はT34/76
PHP5はT34/85

Railsはパンター
DjangoはタイガーI
って感じだからな。
JavaとかASP.NETはM4と言うか米軍
0088nobodyさん2012/04/14(土) 02:27:39.44ID:???
>>87
例えがむつかしい。
0089nobodyさん2012/04/14(土) 02:51:40.51ID:???
言語とフレームワークごちゃまぜなのがいただけない
0090nobodyさん2012/04/14(土) 02:57:17.67ID:???
>DjangoはタイガーI

重そうww
喩えが非常に良くないw
0091nobodyさん2012/04/14(土) 03:02:12.44ID:???
>rubyに触手が動かない
ひどい偏見ながらbeginとかendとか見た時にMSのマクロ系連想しちゃって受け付けなかった
pythonってweb以外にも科学技術計算とか沢山あるしね
数の暴力でアホみたいにライブラリ充実させて、負けることは絶対無いと思う
googleさんもいるし…
0092nobodyさん2012/04/14(土) 23:30:25.46ID:???
begin end はPascal系だろ
0093nobodyさん2012/04/16(月) 15:34:39.61ID:???
1.4文書にはリリースするならmod_wsgi使えって書いてあるね
ttps://docs.djangoproject.com/en/1.4/topics/install/
0094nobodyさん2012/04/16(月) 21:36:37.11ID:???
1.4でstartprojectしたら

project
-manage.py
--project
---settings.py
---wsgi.py

みたいになっててちょっと焦った
manage.pyの処理もちょっと変わったみたいで過去のプロジェクトそのままじゃ動かんかった
あとrunserverもwsgi指定できんのかな
settings.WSGI_APPLICATIONとかオプション出来てる
あとで調べてみよ
0095nobodyさん2012/04/16(月) 23:17:56.03ID:???
mod_wsgiだとDjangoがなぜかApacheで走らなくて
mod_pythonで動かしてる俺にはヤバいニュースだな。

ドキュメント通りにインスコしても何も表示されないんだよなー。
0096nobodyさん2012/04/17(火) 00:08:34.20ID:???
nginx+uwsgiマジオススメ
0097nobodyさん2012/04/17(火) 02:08:18.68ID:???
>>94>>95の時刻逆になってるぞ

mod_wsgi系の設定はここにかいてあるっぽい
ttps://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/modwsgi/
0098nobodyさん2012/04/17(火) 02:09:06.53ID:???
>>94>>95の時刻逆になってるぞ

勘違いでした^^;
0099nobodyさん2012/04/18(水) 00:34:32.35ID:???
1.4かなり変わってんだな
urlテンプレートタグとGeneric View直すの面倒かった
0100nobodyさん2012/04/18(水) 12:43:31.07ID:Wype6WQ2
uwsgi調べてたら、タイムアウト指定する引数がharakiriとか出てきてワロタ
0101nobodyさん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
勘違いしてました。Userオブジェクトには属性emailは存在せず、メソッドのみでした。
ということは、テンプレートに書くときはメソッド呼び出しにカッコはつけないということなのかな。
ぐぐってたら"丸括弧を付ける必要はありません"と書いてるページがあって
曖昧ではありますが、ひとまずそのつもりで進めてみますですm(_ _)m
0104nobodyさん2012/04/26(木) 07:06:17.63ID:RMLosHkb
先生、質問です。

FormPreviewを使って、プレビュー付きの登録ページを作っています。
普通はこんな感じ↓で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を呼び出すことはできないみたい。
何か良い方法ないでしょうか?
0105nobodyさん2012/05/04(金) 17:07:52.09ID:???
>>86
遅レスだが動くのは食指だと思うの。
0106nobodyさん2012/05/04(金) 21:43:09.08ID:???
>>105
ネタにマジレスとかどうかと思うの
0107nobodyさん2012/05/09(水) 15:53:29.80ID:???
Djangoを、Ruby on Railsと比較した場合
良い所と悪い所を教えてください。
■ このスレッドは過去ログ倉庫に格納されています