2013年17WebProg7: 【Python】Webフレームワーク Djangoスレ Part2 (221) TOP カテ一覧 スレ一覧 2ch元 削除依頼
C言語のCGIを語りつつ普及するスレ (529)
Perlで電気ストーブを作る方法 (165)
PHPBB (756)
赤ちゃん拾いました@WebProg板 (183)
WebProg板出席簿(寂) (257)
ショッピングカート総合スレ (420)

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


1 :2011/12/15 〜 最終レス :2013/09/24
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

2 :
落ちてたので立て直してみた
何度も落ちてるのでまた落ちると思うけどよろすく

3 :
で、今一番人気はどのフレームワークなの?

4 :
>>3
Djaンゴwwwwwww

5 :
↑マジで?
Turboの方がいいとか前聞いたことあったけど、やっぱDjangoなのか
速度も速いし、ライブラリのように使えて便利とか聞いて、そうなのかと思った記憶がある

6 :
同時並行で2つのアプリを作るならポート番号は別のにしないとダメ?
交互に起動すれば出来ると思ったんだけど、できなかった。

7 :
>>6
ポートは別にした方が無難。
同じポートを使いまわす場合は、ソケットオプションのreuse-addrを有効にしないと、
サーバが終了しててもしばらくの間はそのポート番号が使えない事がある。
grep してみたところ、djangoにそれっぽいオプションはなかった。

8 :
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

9 :
>>7
ありがと
8000と8080で頑張るわ

10 :
補足で、ポートを分けた方がいい理由としては、もうひとつ。
同じポートだとブラウザのキャッシュのアドレスが混ざってしまい、
別アプリ側のキャッシュを読んでしまう可能性があります。

11 :
ラインハルトさま

12 :
googleトレンドでフレームワークの比較したしたに
密かに django の数を支えてくれてるかも知れないお方ですね(違

13 :
>>11
生きる権利を行使するなら
それに見合った義務を果たせ

14 :
複合キーが使えないとかアホすぎる。、

15 :
同じ汎用ビューを複数使うと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/に飛んでしまいます。

16 :
djangoって2chじゃぜんぜん盛り上がってないですね

17 :
>>16
基本的に仕事ないからな

18 :
pythonで仕事できる会社少ないイメージあるね。
一度はpythonで食ってみたいもんだが。

19 :
あまりに過疎りすぎるとフレームワークやらライブラリが発展しなくなるのが心配。
海外ではそれなりに活性化されてるのかな?

20 :
日本はjavaかphpだけだよな
pythonのwebフレームワークはdjangoが一番無難とおもう

21 :
Djangoのルールに乗っかれないとバッドノウハウの塊になっちゃうのがなぁ。
(認証でUserテーブルを独自に定義したい場合とか)
他にいいフレームワークないですかね。
Flaskって奴もよさそうだけど、ちょっと軽量すぎる・・・
TurboGearsはどうなんだろう。
それとも素直にRailsとかCakePHP使っとくべきですかね。

22 :
Pylonsってのもあるのか。

23 :
pylonsはオワコン
pyramid

24 :
>>21
werkzeug

25 :
>>21
それはどんなフレームワークでも同じじゃね?

26 :
django-cmsって使ってる人いる?

27 :
サーブレットのように、あるリクエストで生成したインスタンスを
レスポンスが完了した後も残しておくことって出来ないですか?
出来ない場合、同じようなことをやろうと思ったらキャッシュ機能を
使うしかないですかね?
キャッシュだとシリアライズのコストの分が余計にかかるので
できればサーブレットのようにプロセスが常駐してインスタンスを
そのままメモリ上に持たせておきたいと思ったのですが・・・

28 :
タコですが質問です。
djangoって静的ファイルはhttpdでやれよって思想だと思うんですが、
セッション管理によるアクセス制限
(例えばdjangoでログイン中のみapacheから静的ファイルにアクセスできるようにする)
っていう仕組みはどのように実装したらいいんでしょうか?

29 :
>>27
私はタコですがセッションのどこかに放り込んでおけばいいのでは?
http://docs.nullpobug.com/django-doc-ja/trunk/topics/http/sessions.html#topics-http-sessions

30 :
>>27
memcached

31 :
この本読んだひといますか?
感想聞かせてください
WSGIウェブプログラミング
ttp://www.amazon.co.jp/dp/4877832882/
書評悪すぎてわろす

32 :
URLディスパッチャがめんどくさすぎる

33 :
>>28
djangoの「思想」は無視すればいいと主受け尾d。
URLに対応するファイルを読み込んでユーザチェックで分岐して
renderする処理を加えればいいだけじゃないの。
簡単にできるでしょう。

34 :
主受け尾d、ってなんだ・・タイポした
なお、djangoのstatic拒否っていう「思想」は別に珍しくなくて、
ホントにstacicならサーバにまかせます、っていうだけでしょ。
日本語の1.0 documentation読んでるとなんかすげー厳しいなあと思うかも知れないけど
1.3documentationの
https://docs.djangoproject.com/en/dev/howto/static-files/
を読めば1.0にはなかった
django.contrib.staticfiles
っていう仕組みもある。

35 :
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番を入れておきたいのですが…
伝わりにくい質問でごめんなさい。

36 :
defaultとかあったと思うが,Metaでやるとできないか
JavaScriptでやるか,12をテンプレートでレンダ

37 :
>>36さん
レスありがとうございます。
<input type="hidden" name="shop" value="{{ shop_id }}>
みたいなテンプレートでやってみたんですが、Validateでエラーになってしまったもので...
Djangoマニュアルの英語版も読んだんですが、こういうところが書かれてないんですよねぇ。
どこかノウハウが集まってるサイトとかないんでしょうか。
みなさんはDjangoの情報収集はどこでされてますか?
GoogleのDjangoグループは全然更新されてないんで、困ってます...

38 :
たしかフォームクラスの__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を呼ぶ形で

39 :
ごめん嘘書いてた
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"]をイジれば動的にフィールドを操作できます

40 :
Django1.2を使ってます
テンプレートの使い方で質問していいでしょうか?
ちょっと困ってます
dataA.dataB[0].dataC を取り出す方法です。
[0]という表記がシンタックスエラーを出すので調べたらスライスフィルタを使えと
dataA.dataB|slice:"0:1" これだとdataBは取り出せますがここから詰まってます
どうか解決法をご存知の方ヒントをお願いします。
方法がなければデータそのものを加工して対処します。

41 :
簡単なマッパーかますのが一番楽じゃないかな
http://tokibito.bitbucket.org/bpmappers/
これとかオススメ

42 :
うわーー 最初からこれ使えばよかったーーー

43 :
テーブル生成についての質問なのですが
djangoでテーブルを動的に生成することってできますか?
ユーザ情報(これはカラム固定)がDBに入っていて
そこからある計算を行ってデータを作るのですが
それがカラム数が動的に変わってしまうのです
要するに動的に create を発行すればいいのですが
djangoの場合だとモデルクラスが対応してないとダメですよね…
というよりモデルクラスが先にあって、そこからテーブルを
作成するのが基本ですよね…
なにかうまい方法はないでしょうか…?
(すみませんが設計で回避というのは無しでお願いします)

44 :
発想を変えて動的にモデルをつくるようにしてみては?
モデルのプロパティはJSONとかにシリアライズしてblobで保存とか
MongoDBとかでも動的に変更できるけど茨の道

45 :
いよいよDjango1.4正式版でるね

46 :
なにが変わるの?

47 :
結構機能追加されてんね
1.3のデータベース周りの大幅アップデートに比べると霞むけど
テンプレートタグのelifは有難すぎ

48 :
djangoが楽すぎて他のフレームワークいじる気力なくなる

49 :
django使ってるのって、日本で10人ぐらい?

50 :
すごい優れたフレームワークだと思うので実践投入しようとしてるんだけど。
和書は1.0前のしかないし、Django Book 2.0すら和訳途中で頓挫してるし…
Googleグループも過疎ってるし。日本語で情報共有できないのが辛い。
英語だけどKindleの電子書籍はいっぱい売ってるし、海外フォーラムでは話題が多いんだよね。
逆に、今なら日本語Django界で名を挙げるチャンスなの?w
githubとかでもいいからDjango使っているプロジェクトとかソースコード読んで参考にしたい。
誰か情報共有してくれー!

51 :
そもそもPython使ってる人が日本に20人ぐらいしかいないから。

52 :
俺もいるから21人だな

53 :
いや、お前入れて20人だから

54 :
こういう地域による過疎フレームワークってどうやって情報共有すればいいんだろうね

55 :
英語読めれば問題ない

56 :
電気無ければただの箱的な?

57 :
Django使うような奴らは国内なんかが住処じゃねーって!?
日本じゃ王道はRubyでRails。
Pythonなんかインデント言語って馬鹿にされて、
日本じゃ誰も評価されないDjango使う馬鹿は相手が世界ってことか?
面白いじゃないの!実践投入させてもらうぜ!

58 :
世界目指そうぜ

59 :
ケータイサイトとか作るんじゃなければいいかもね。
今さらケータイサイトとか作ってる場合じゃないけどな。

60 :
ええと…
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

61 :
django用にクラス作りなおすしかないんじゃないかな

62 :
モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
モデルにdataクラスへの入出力追加するだけだし。

63 :
>>62
> モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
> モデルにdataクラスへの入出力追加するだけだし。
すみません、具体的なイメージが湧かないのですが
例えばinput_dataが
class input_data:
def __init__(self, name, value):
self.name = name # string
self.value = value # integer
こんなクラスだとしたら、これをプロパティにしたモデルクラスって
具体的にどうなるんでしょうか?

64 :
データベースへのアクセスはdjangoのORMを使うの?
それとも別に用意されてるの?

65 :
>>64
ORマッパーが先に決まっているわけではないです
djangoのモデルクラスを利用して既にあるデータクラスを
そのまま使える方法があれば一番いいですし
それが無理そうなら別の方法を考える、という感じです。
昨日調べてたらSQLをそのまま発行することは出来るみたいなので、
資産の有効利用を優先するならそれもありかな、と少し考えています。

66 :
カスタムマネージャでなんとかなるかも
マネージャをゴリゴリ書く必要あるけれども
ただちっと面倒くさいよね何やるにしても

67 :
寛解に至らない

68 :
偉い人へ:
djangoforms の BooleanField で checkboxを出すとHTMLが、
「ラベル □」になちゃうんだけど、「□ ラベル」にするのってどうやるの?

69 :
自分はその辺の面倒くさいところテンプレートでやってる
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

70 :
>>69
自分でテンプレートに展開するのって自由で素敵ですね。
トライしてみます。偉い人ありがと。

71 :
他のスレで質問したところ、こちらへ誘導されました: 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 が必要になるのであれば、内容も教えてください。

72 :
ファイル構成は下記のようにする予定です:
- 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
...

73 :
相対じゃなくて絶対でやるといいよ
相対 {% 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していくと綺麗に分離できるよ

74 :
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
検証してないけどこんな感じだよ

75 :
それと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

76 :
>>73-75
回答ありがとうございます。今夜ためしてみます。

77 :
なんか馬鹿みたいな質問なんですけど
djangoでwebアプリを作ったときに
定数とか設定ファイルみたいなものを用意して
webサーバー起動時にそれを一度だけ読み込んだら
アプリが終了するまではその値をいつでも参照できるように
しておくことってできないですか?
ちなみにwebサーバーはapacheを使ってます
(apacheとdjangoをmod wsgiで連携)

78 :
そいうのはsettings.pyに書いとくといいです
settings.pyにHOGE="hoge"としておくと
from django.conf import settings
settings.HOGE
と言った感じで参照できます

79 :
なるほど!
ありがとうございました!

80 :
gae/p の blobstoreで、アップロードのついでに POSTした日本語が文字化けする障害って
まだ直っていないようですね・・
何年か前に Google-App-Engine-Japanに障害報告が上がってるのに。
仕事遅いなぁ中の人。
この障害への回避策って、Base64エンコードぐらいでしょうか?

81 :
gaeでdjango使うのしんどくない?

82 :
>>81
何とか使ってます。

83 :
超伸びてるし…
>>34
ありがとうございました

84 :
phpディスられてる割りにユーザ増えんね…

85 :
日本だとrubyに流れるんだろうね
2.x系は日本語の扱い面倒くさいし

86 :
ruby使ってる人=はてな民=常に上から目線みたいなイメージがあって、どうもrubyに触手が動かない

87 :
>>84
戦車に例えると
PHP4はT34/76
PHP5はT34/85
Railsはパンター
DjangoはタイガーI
って感じだからな。
JavaとかASP.NETはM4と言うか米軍

88 :
>>87
例えがむつかしい。

89 :
言語とフレームワークごちゃまぜなのがいただけない

90 :
>DjangoはタイガーI
重そうww
喩えが非常に良くないw

91 :
>rubyに触手が動かない
ひどい偏見ながらbeginとかendとか見た時にMSのマクロ系連想しちゃって受け付けなかった
pythonってweb以外にも科学技術計算とか沢山あるしね
数の暴力でアホみたいにライブラリ充実させて、負けることは絶対無いと思う
googleさんもいるし…

92 :
begin end はPascal系だろ

93 :
1.4文書にはリリースするならmod_wsgi使えって書いてあるね
ttps://docs.djangoproject.com/en/1.4/topics/install/

94 :
1.4でstartprojectしたら
project
-manage.py
--project
---settings.py
---wsgi.py
みたいになっててちょっと焦った
manage.pyの処理もちょっと変わったみたいで過去のプロジェクトそのままじゃ動かんかった
あとrunserverもwsgi指定できんのかな
settings.WSGI_APPLICATIONとかオプション出来てる
あとで調べてみよ

95 :
mod_wsgiだとDjangoがなぜかApacheで走らなくて
mod_pythonで動かしてる俺にはヤバいニュースだな。
ドキュメント通りにインスコしても何も表示されないんだよなー。

96 :
nginx+uwsgiマジオススメ

97 :
>>94>>95の時刻逆になってるぞ
mod_wsgi系の設定はここにかいてあるっぽい
ttps://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/modwsgi/

98 :
>>94>>95の時刻逆になってるぞ

勘違いでした^^;

99 :
1.4かなり変わってんだな
urlテンプレートタグとGeneric View直すの面倒かった

100 :
uwsgi調べてたら、タイムアウト指定する引数がharakiriとか出てきてワロタ

101 :
これいいな
メモリリークが一目でわかる
ttps://github.com/munhitsu/django-dowser

102 :
申し訳なす、テンプレートの書き方なんですが、
例えばUserオブジェクトに属性email、アクセサemail()があるとき
{{ user.email }} とは書けるけど {{ user.email() }} だとエラーになります。
TemplateSyntaxError: Could not parse the remainder: '()' from 'user.email()'
これはどうしてなんでしょうか。
ドキュメントにはテンプレートエンジンが.(dot)を見つけたとき以下の順で評価を試みるとあるけど
関係してるのかなんだかさっぱり・・・
辞書の照合 (lookup)=>属性の照合=>メソッドの呼び出し=>リストをインデクス指定して照合

103 :
勘違いしてました。Userオブジェクトには属性emailは存在せず、メソッドのみでした。
ということは、テンプレートに書くときはメソッド呼び出しにカッコはつけないということなのかな。
ぐぐってたら"丸括弧を付ける必要はありません"と書いてるページがあって
曖昧ではありますが、ひとまずそのつもりで進めてみますですm(_ _)m

104 :
先生、質問です。
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を呼び出すことはできないみたい。
何か良い方法ないでしょうか?

105 :
>>86
遅レスだが動くのは食指だと思うの。

106 :
>>105
ネタにマジレスとかどうかと思うの

107 :
Djangoを、Ruby on Railsと比較した場合
良い所と悪い所を教えてください。

108 :
比べられるもんでもないけど
強いて言えば何か問題あったとき日本語情報沢山あるのがror
コード読んで解決するのがdjango
pythonかrubyの違いは好みだしね

109 :
テンプレートについて質問です。
{% for x in X %} ... {% endfor %}
の後に、もう1度
{% for x in X %} ... {% endfor %}
を記述したところ、前半は表示されるのに後半は何も表示されませんでした。1つのシーケンスは1回しか使えないのでしょうか?

110 :
2回も同じループさせるとか無駄じゃね?

111 :
1つのデータをテーブル表示 & グラフ表示 (のために JavaScript 埋め込み) したいのです。

112 :
>>107
FormフレームワークはDjangoが圧倒的に優秀
あとRailsはコマンドラインが糞遅い。
よってRailsを選択するメリットは皆無

113 :
>>109
そいうことやったことないから原因わからんけど同じループ回せられないならviewでレンダリングしたHTMLをテンプレートに渡してやったらどう?
render_to_stringとかで

114 :
せっかくテンプレートで役割分担してるんだから、まだXのコピーを用意する方がマシかも。

115 :
原因がわかりました。リストを渡したつもりがイテレータを渡していました。これは一度ループし終わると使えません。

116 :
バルス

117 :
職場の先輩がジュワンゴって発音するんですけど
どうしたらいいですか?

118 :
ド素人が今からDjangoを始めるなら1.3と1.4のどちらがオススメですか?

119 :
わかりません><

120 :
レスありがとう
>>108
日本語の情報が少ないのはしょうがないですね。
でも公式サイトの英語のドキュメントは丁寧に書かれている気がする。
>>112
DjangoはMVCのViewの部分が使いやすいってことですか?
Rails遅いってのは聞いたことがあります。
大部分はRubyの原因かもしれないけど。
>>118
俺もDjangoこれからだけど素直に最新の1.4でいいんじゃないの。
覚えてる間に次のバージョンでるでしょうw

121 :
>>120
Djangoを学習している間にPyramidがメジャーになるのではという不安が。

122 :
>>112みたいに短絡的な結論出せる人が羨ましい

123 :
djangoで異なる複数のリクエスト間で
(巨大な)オブジェクトをメモリ上に共有する方法ってないですか?
オブジェクトが小さければキャッシュ機能でmemcachedを使う
というのが良さそうですが、非常に大きい(数ギガ)オブジェクトを
共有したいのです
(memcachedだとオブジェクト一つのサイズには上限があるので
無理だと思ってるのですが、そんなことないですか?)
小さなオブジェクトが大量にあるのではなく
一つの巨大なオブジェクトというのが外せない条件になってます。
具体的な上限もなくて、システム上に展開できるサイズなら
何Gでも利用したいとなっています。
やりたいことのイメージは
「データを加工せよ」というリクエストを一回だけ発行して(この処理は遅くてもいい)
それ以降は
「加工したデータをグラフAにして描写」
「加工したデータをグラフBにして描写」
「加工したデータを更に加工」
というリクエストを発行
というものです。
この加工データが巨大なオブジェクトになっていて
複数のリクエストに対して高速に処理するために
メモリ上に共有させておきたいのです
何か上手い方法ないでしょうか?

124 :
>>123
共有ストレージの考えだとネットワークI/Oがネックになるし排他も面倒だから
加工処理用にバックエンドサーバを設けるのがシンプルかな。
んでキューでなげるようにすれば「データを加工せよ」ってのもフロント自体はすぐ返せるし、
バックエンドのクラスタ化も容易。
あとはフロントでキャッシュさせるなりチューニングしていくかんじ。

125 :
>>124
不勉強で申し訳ないのですが
キューというのはメッセージ・キューイングと呼ばれる機能のことでしょうか?
具体的なイメージがよくわかってないのですが、仮にやりたかったことを
加工リクエスト
APPサーバがDBからデータ取得
取得したデータを加工
加工データを保持(この方法がわからなかった)
結果(加工しましたというメッセージ)をレスポンス
グラフAの描写リクエスト
APPサーバが保持されていた加工データをグラフ化
結果(グラフ)をレスポンス
として書いた場合、124さんの方法はどのような流れになるのでしょうか?
加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
するということですか? またその場合、加工データは異なるリクエスト間で
共有されるのでしょうか?
質問ばかりですみません

126 :
>>125
> 加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
そう。仮に物理サーバはいっしょでも論理的に役割分担させる。
保持はGBオーダなデータ加工だし、mmapにしとけばファイルにも逃がせられる。
> するということですか? またその場合、加工データは異なるリクエスト間で
> 共有されるのでしょうか?
フロントへの加工リクエストに対して同じ対象の描写リクエストがだせるってことは
なんらかの識別子が存在してるはずで、バックエンドでも同様にやればなんとでもできる。

127 :
>>118
1.4から日付周りが変わってるから後々面倒なことになりたくなかったら1.4がいいよ
あと多対多のインスタンスもjoinするprefetch_related()とかもあって1.4を選ばない理由がない
generic viewがクラスベースになり、日本語サイトを参考に出来ないのがちょっとハマるかもしれないけど

128 :
mmapじゃね。pythonはよくは知らんけど。

129 :
>>126
返信遅れました
正直まだ理解できてない部分があるのですが
何とかがんばってみます
(オブジェクトがリクエスト間で共有できるということは
バックエンド用のプロセスが新たに走っている
ことになるのですよね?)
もし「ここを見ればいい」というサイトがあれば
教えていただけるとありがたいです

130 :
ここは読んでおきました
http://d.hatena.ne.jp/yuku_t/20101018/1287391988
これを見た感じだとデータを保有しておくというよりは
文字通りジョブ(処理)を投げておいてバックエンドで実行させて
処理が終わり次第結果が返ってくるという印象を持ったのですが、
本来はそういう意図だとしても使い方を工夫することでストレージ
のように利用することも出来る、ということでしょうか

131 :
で、djangoとrailsあなたたちはどっちが良いと思ってるの?

132 :
どっちもどっちじゃない?

133 :
https://code.djangoproject.com/ticket/18392
utf8mb4対応くるだろうか

134 :
eclipseで実行して「It worked!」って表示されるけど、index.htmlが表示されない
なぜ表示されないのでしょうか(htmlファイル等はバグ等なく作成済み)
eclipse 3.7.2
django 1.3.0

135 :
今人気の芸能人相性診断♪
楽しめる人気の占い発見しちゃいました。
いくつか質問に答えるだけであなたにピッタリの人がわかっちゃう。
気になったかたはチェックしてみてね。
http://232bs7.info/2/

136 :
>>134
urls.py見直したら?

137 :
django1.3でmodels.pyの位置をデフォルトから変えたら
管理画面にmodelsに定義したクラスが表示されなくなってしまって
とりあえずadmin.pyのほうをmodels.pyと同じフォルダに移したら
また表示されるようになったんだけど
admin.pyとmodels.pyって必ず同じフォルダい入れてないとダメなの?

admin.site.register(SampleModel, SampleAdminCls)
これを
admin.site.register(hoge.SampleModel, SampleAdminCls)
みたいにしても意味なかった

138 :
インスコはrailsよりラクだよなw
な?・・・

139 :
pip install django

140 :
djangoって、単純なことでハマることが多い。
例えば、メールアドレスでログインさせたい時とか、
ユーザー登録フォームを複数ページに分割させて
最後にプレビュー表示&メール認証させるとか、
よくあるシステムを構築するのに一苦労する。

141 :
年月日の入力Widgetも、
年と日は数字だけのSelectなのに、
月の部分だけは「○月」とか表示されるし、
サクっとできて欲しい機能がいまいち不完全。
情報共有したがらないPython使いの気質のせいか?

142 :
Railsはアホみたいに情報あふれてる、そのくせバージョン違いで使えないのが多くて萎える。
Djangoはその点Railsよりマシなはずなのに、情報自体少ない。
Djangoの情報が溢れれば楽なのにな

143 :
MySQlの設定するときに決まってpasswordが打ち込めなくなるんだけど知ってる?
escで逃げちゃってるからきっとadminサイト入れない。

144 :
>143
DjangoとSQLのバージョン書こう
つうか、設定ファイルに書けばよくないか

145 :
Djangoの勉強を始めたばかりなのですが、わからないことがあり質問させて頂きます。
現在、勉強がてらにユーザ認証を行う掲示板のようなものをつくろうと考えています。
Modelとしましては、Entryクラスがあり、その中に
・書きこみ日時
・タイトル
・本文
・書きこみユーザ
という情報を持たせたいのですが、書きこみユーザはどのようにフィールドを設定すればいいのでしょうか?
まだ勉強中なのですが、認証にはDjangoのauthモジュールを使おうかと考えているのですが、そのauthモジュールの書きこみユーザとの連携方法がわかりません。
よろしくおねがいします。

146 :
投稿テストですよん...( ̄ー ̄)ニヤリ
HOFj4DjMraDFpyM
133941476137733アメフトォ(大嘘) そして面接へ

147 :
>>145
request.userからユーザーオブジェクト拾って入れる
ForeignKey(django.models.auth.models.User)でいいと思うけど
ttp://djangoproject.jp/doc/ja/1.0/ref/request-response.html#django.http.HttpRequest.user

148 :
びっくりするほど過疎ってるね。
django、良いフレームワークなのに
なんでこんなに人少ないんだ?
そんなにPython使いが少ないのか、
そんなにPHPが便利すぎるのか。。

149 :
日本でPython使ってる人なんて300人ぐらいしかいないもの

150 :
ImageFieldのheight_fieldとwidth_fieldは何をするためのものになるのでしょうか?
http://docs.nullpobug.com/django-doc-ja/trunk/ref/models/fields.html#django.db.models.ImageField.height_field
このページの説明では何を言っているのかよくわかりませんでした。

151 :
おひさしブリーフなんだけどまだデファクトなん?

152 :
最近pyramid使い始めた

153 :
CakePHPのセッションはUAと結び付けられているようですが、Djangoはそのような機能はありますか?
ブラウザのクッキーファイルが漏れて、セッションIDが奪われた時の対策としてどのようなものがあるか調べております。

154 :
URLFieldに入れる前に、URLFieldに入る値かどうかを確認したいのですが、そのようなことはできますか?

155 :
>>148
djangoさんが優秀すぎてグチるネタも無いからじゃないかな?

156 :
書きこんでも誰も答えてくれないので書き込みません

157 :
>>149
> 日本でPython使ってる人なんて300人ぐらいしかいないもの
お前ら一人ひとりがこの精鋭たちなんだな……
http://www.youtube.com/watch?v=CFZiil0DfMc

158 :
デプロイの定番ってどんな感じなのでしょうか
nginxとgunicornをネットではよく見かける

159 :
>>158
俺も知りたい。
nginxにしようか無難にapacheのままにしとくか迷ってる。
DBはPostgresが主流なのかな。

160 :
Djangoの勉強をしていたらDjangoにはまってしまい、Djangoでサイトを作りなおしております。
そこで1点悩んでいる部分があるのですが、現在制作しているサイトはPHPで制作しており、アクセス毎に携帯電話、スマートフォン、PC、IE6-8を切り替えて表示していたのですが、Djangoではこのようなアクセスの振り分けはどのように行うのが一般的になるでしょうか?
urls.pyに/sp/indexや/i/index等をはさみアクセスURL毎に端末を振り分けるとなると、Viewが端末毎に必要になりそうですし、全てのViewの中で端末のUAで振り分けるとViewの1メソッドが大きくなるのではないかと思っています。
携帯電話向けサイトだとAjaxなどが使えないためPCと遷移も変わるので、前者がいいのかとも考えているのですが、検索した際に携帯電話からPCサイトにアクセスすると見えなくなってしまうとも考えています。
私の考えをただ書かせて頂きましたが、一般的な方法や工夫されている方法などあれば教えて頂ければと思います。よろしくお願い致します。

161 :
Dajngoとか3日もあれば使いこなせるだろう
語ることすらないわ

162 :
じゃあ質問に答えてやれよ

163 :
>>862
フレームワークは3系に対応するまで覚える気になれません。
web2pyの対応を待ってるんだけど、Djangoはもう対応したのですか?

164 :
まだリリースされてないけど、1.5で対応するみたいよ https://docs.djangoproject.com/en/dev/releases/1.5-alpha-1/

165 :
>160
http://blog.madoro.org/mn/84

166 :
Djangoで初期にDBに保存しておきたい値はどのように設定すればいいのでしょうか?

167 :
DBに直接書き込む

168 :
Djangoには初期値を設定する方法は容易されていないのでしょうか?
そうなると、スクリプトを設置する際に、syncdbしたあとに書きこみスクリプトを実行し、そのあとにスクリプトを動かす必要があるという事でしょうか?

169 :
問答無用でselect文発行するソースでも書いてるのか?

170 :
>>166 >>168
逆に質問だけど
あなたが Django 使う前はどういう方法で DB の初期値を作っていましたか?

171 :
テストサーバーでデバグしたあと本番にデプロイするときに、スキーマはそのままで、
データだけ空(または必要最小限な初期値のみ&もちろんインデックスも最初から)に戻して
うpしてくれる機能があると便利かな、とは思う。

172 :
本番アップデートするたびに初期化されるのか。
胸熱

173 :
>>168
fixture かな

174 :
Djangoをレンタルサーバで使える業者ってありますかね? VPSで運用していると、OSやシステムのメンテナンスコストがかかってしまうため、レンタルサーバのように、メンテナンスは業者が行なってくれるところを探しています。

175 :
>>174
GoogleAppEngine

176 :
GAEで新しめのDjangoを使おうとすると、自分でDjango自体のメンテナンスが必要になるかと思います。そういったことも含めメンテナンスをしてくれる業者はありませんか?

納品してしまったら、こちらからはシステム以外のメンテナンスを余りしなくてもいいようにしたいです。

177 :
Django1.4を利用してDjangoの勉強をしております。
複数のデータベースを使った実験をしようと、
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の上の行でなければいけないのでしょうか?

178 :
render_to_response()の第3引数のRequestContextというのが全く意味がわかりません
説明していただけませんか?

179 :
馬鹿には無理

180 :
アプリ起業 iPhone C#まとめ Ver 1.5
http://tinyurl. com/9w97424

181 :
ModelFormを使ってフォームを作成しています。
UserForm( request.POST, request.FILES) のように、User登録フォームを作成しているのですが、passwordも入力された値を引き継がれるようです。これをパスワードのinputのvalueを空にしたいのですが、formsetの中身を操作するメソッドは用意されていないでしょうか?

182 :
formsetって書いてるけど、formでいいのかな?
form.is_validがFalseのときのエラー吐いたフォームでpasswordクリアしたいってことなら、
(TrueだったらHttpResponseRedirectを返すのがセオリーっぽいので
UserForm()には引数与えないだろうし)
javascriptのonloadイベントとかでクリアした方が楽かも。

183 :
どなたかsocial-pluginにmixiの対応をつけてくれませんか。

184 :
>>177
亀だけど、django/db/__init__.py中で
connections = ConnectionHandler(settings.DATABASES)ってなってるから、
settings.pyのDETABASES定義より下の行じゃないと
ダメなんじゃないかな。

185 :
fixtureを使ってUserを追加したいのですが、どのように書けばよいのでしょうか?

186 :
>>185
1〜2個User作って、manage.py dumpdataしてフォーマット見てみたら?

187 :
1.5全然来ないな

188 :
Southはpython3非対応?

189 :
俺は教えねえよ。俺は坊やの先生じゃないからな。お前もPy人なら自分で気づけ

190 :
PHP,Ruby(というよりRails)の次にDjangoに目をつけて勉強中だが、チュートリアルがわかりづらすぎて挫折しそう
一つ一つ追っていけばその段階ではわかるけど、仕様そのものが全く頭に入ってこない

191 :
>>190
他のフレームワークで開発していたら、置き換えるだけで理解できると思うんだが。
たとえばどの変がわかりにくい?

192 :
>>190
同意

193 :
>>190
ModelのところだったらModelのドキュメントを読みながら進めたりするとわかりやすいよ

194 :
django-social-authがPython3使えないみたいなんだがほかにいいライブラリって無い?
OAuth2&Python3で

195 :
test

196 :
おもろいけどすぐ飽きる
http://portal.nifty.com/2013/03/22/a/3.htm

197 :
>>190
いまいち体系化されてないんだよな。
middlewareやらsignalやらclass-based viewやら、
ちょっと奥まったところにいくとソースみるしかなくなる。
でもdjango自体はまだずっとマシで
そのオープンソースアプリになると全くドキュメントなかったりするから。
pythonのこういうところが普及しない原因なんだろうな。

198 :
>>197
はげど(死語)

199 :
馬鹿には無理

200 :
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

201 :
>>200
文字列はcallableじゃないからとしか言いようが。。

202 :
DjangoってO/R Mapperをすきなものに
簡単に入れ替えて使えるようになってますか?

203 :
>>201
http://kay-docs.shehas.net/templates.html

204 :
>>202
できないし、やる意味もない。

205 :
>>202
できるけど、それならDjangoを使う意味がない

206 :
>>204-205
ありがとう
O/R mapperやテンプレートエンジンは何種類かから選べたり、
自由に入れ替えたりできるフレームワークもあるので、Djangoも
そうなってると思ったのですが、残念

207 :
iPhoneアプリ. Windowsアプリを売って生き残れ Ver 1.7 リンク数61
Http://qr. net/kh4y

208 :
django製の業務パッケージってなにか実例ないですか?

209 :
djangoアプリって日本好みなのは少ないね。
フレームワークとしては良いんだけどなぁ。

210 :
Webサイトは沢山つくったけど業務アプリ/パッケージはないな
そもそもWebサイトに比べてそんなに引き合いもないし

211 :
django1.3をscalaにポーティングしようかしら?

212 :
>>211
Scalaは人気ないし、JavaかC#に移植してほしい。

213 :
djangoを導入して、codezineのチュートリアルが終わりました。
データベースにMySQLを使っているのですが、テーブルの文字セットがlatin1_swedish_ciになっているせいなのか、
日本語のテキストを投入できないのですが、モデルの定義で症状順序を指定する方法はないのでしょうか?

214 :
オブジェクトにプロパティを追加した状態でシリアライズを行いたいのですがどのようにすればいいでしょうか?
django.core.serializers.serializeでシリアライズを行うと、オブジェクトに行った変更が維持されずにシリアライズされてしまいます。

215 :
>>213
UTF8で作り直し
>>214
えっ

216 :
>>214
pickle.dump は?とか言ってみるテスト

217 :
くっそー、すごく使いやすいし良いフレームワークだと思うのに、デプロイがうまくいかなくて腹立つ…
Djangoの問題じゃなくて、Apacheをうまくいじれない俺の問題なんだ…(;´д`)

218 :
途中でテーブルの列が変わったときと既存のテーブルとどうやって連携させるのかよくわからない

219 :
apatch捨ててnginx+uwsgiで行こう

220 :
>>219
俺もその構成だな
なにより軽い

221 :2013/09/24
>>217だけど
おk、nginxとuwsgiで行ってみる。
TOP カテ一覧 スレ一覧 2ch元 削除依頼
弐ch編集のphp講座 (295)
Drupal node 9 (282)
CGIに依存しないPerlの話題一般/Part2 (254)
Perl::DBI (323)
姫君スクリプト (268)
【RoR】Ruby on Rails Part16 (819)
--log9.info------------------
通勤電車内でのベビーカーや旅行鞄は凄い迷惑 (708)
【グモッ】人身事故スレ◆Part598 【チュイーーン】 (753)
女性ウテシ・車掌が不安だとおもってる人の数→ (660)
●○£$¥キセルの奥義・其の佰弐拾参¥$£●○ (729)
【東日本大震災】東武鉄道の対応の悪さ (894)
大阪近郊区間大回り乗車【名無し専用】 (545)
駅弁 うまい駅弁 (*^o^*)ウマーい駅弁【40食め】 (596)
//// 鉄道板・質問スレッドPart151//// (865)
M嶋と不愉快な仲間たち8 (120)
遮光幕スレpart3 (160)
【嘘つき】売れる切符はちゃんと売れ6【出札】 (786)
2013年臨時列車スレ3 (151)
 ☆ 斉藤雪乃スレpart5 ☆  (331)
東北新幹線新青森開業は大失敗に終わった件 (358)
【2013秋】鉄道部品を集めよう64品目【鉄道の日】 (125)
老舗【鉄道友の会】を発展させよう!…3.1 (601)
--log55.com------------------
【大韓商議会長】「最近の韓国経済は捨てられた子のよう」[9/19]
【長尾敬衆議院議員・内閣府政務官】 日本の尊厳と国益を護る会による、対馬振興強化に関する緊急要望[9/19]
【夕刊フジ】もしも…日韓「軍事衝突」起きたら米国はどうする? 在韓米軍撤退なら韓国は「北朝鮮と同等の敵国となる」[9/19]
【文大統領】国境なき記者団の事務局長と面会「言論の自由こそ民主主義の根幹、民主主義の基本だと考える…」[9/19]
【マカオ政府衛生局】韓国におけるA型肝炎の流行受け市民に注意呼びかけ…生食避けて 症例は京畿道、ソウル、大田エリアに集中[9/19]
【中央日報】 「9・19平壌共同宣言」1年後の文大統領の支持率59.4%→43.8% [09/20]
【中国専門家】日韓の対立エスカレート、「双方に解決の意思見えない」[09/20]
【断韓外交】「付き合ってもロクなことがない」 日本より徹底 北朝鮮・金正恩氏の文在寅政権に対する無視戦術[9/20]