【Python】Webフレームワーク Djangoスレ Part2at PHP
【Python】Webフレームワーク Djangoスレ Part2 - 暇つぶし2ch2:nobodyさん
11/12/15 23:47:31.14
落ちてたので立て直してみた
何度も落ちてるのでまた落ちると思うけどよろすく


3:nobodyさん
11/12/18 22:42:56.54
で、今一番人気はどのフレームワークなの?

4:nobodyさん
11/12/19 00:34:25.25
>>3
Djaンゴwwwwwww

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

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

7:nobodyさん
11/12/26 12:40:03.88
>>6
ポートは別にした方が無難。

同じポートを使いまわす場合は、ソケットオプションのreuse-addrを有効にしないと、
サーバが終了しててもしばらくの間はそのポート番号が使えない事がある。

grep してみたところ、djangoにそれっぽいオプションはなかった。

8:nobodyさん
11/12/26 14:56:38.54
22 Dec django 1.4 alpha 1 released
URLリンク(docs.djangoproject.com)

Porting 2.x code so that it runs on 2.x and 3.x from a single codebase
URLリンク(code.djangoproject.com)

Proposal: drop Python 2.5 support in Django 1.5
URLリンク(groups.google.com)

9:nobodyさん
11/12/26 15:15:53.68
>>7
ありがと
8000と8080で頑張るわ

10:nobodyさん
11/12/26 15:48:49.02
補足で、ポートを分けた方がいい理由としては、もうひとつ。

同じポートだとブラウザのキャッシュのアドレスが混ざってしまい、
別アプリ側のキャッシュを読んでしまう可能性があります。


11:nobodyさん
11/12/27 06:06:43.86
ラインハルトさま

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

13:nobodyさん
12/01/02 04:48:35.54
>>11
生きる権利を行使するなら
それに見合った義務を果たせ

14:nobodyさん
12/01/03 09:37:05.06
複合キーが使えないとかアホすぎる。、

15:nobodyさん
12/01/04 21:31:19.42
同じ汎用ビューを複数使うと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:nobodyさん
12/01/08 19:07:42.92
djangoって2chじゃぜんぜん盛り上がってないですね

17:nobodyさん
12/01/09 10:09:58.37
>>16
基本的に仕事ないからな

18:nobodyさん
12/01/10 00:56:59.16
pythonで仕事できる会社少ないイメージあるね。
一度はpythonで食ってみたいもんだが。

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

20:nobodyさん
12/01/15 16:43:29.95
日本はjavaかphpだけだよな
pythonのwebフレームワークはdjangoが一番無難とおもう

21:nobodyさん
12/01/21 04:24:28.26
Djangoのルールに乗っかれないとバッドノウハウの塊になっちゃうのがなぁ。
(認証でUserテーブルを独自に定義したい場合とか)

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

TurboGearsはどうなんだろう。

それとも素直にRailsとかCakePHP使っとくべきですかね。

22:nobodyさん
12/01/21 04:47:17.81
Pylonsってのもあるのか。

23:nobodyさん
12/01/21 07:22:45.45
pylonsはオワコン
pyramid

24:nobodyさん
12/01/21 07:23:25.54
>>21
werkzeug

25:nobodyさん
12/01/22 21:23:50.03
>>21
それはどんなフレームワークでも同じじゃね?


26:nobodyさん
12/02/07 23:14:28.71
django-cmsって使ってる人いる?

27:nobodyさん
12/02/09 22:59:21.30 lRLr0cSK
サーブレットのように、あるリクエストで生成したインスタンスを
レスポンスが完了した後も残しておくことって出来ないですか?

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

28:nobodyさん
12/02/09 23:21:54.04 /iRWC1gw
タコですが質問です。

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

29:nobodyさん
12/02/09 23:24:12.52 /iRWC1gw
>>27
私はタコですがセッションのどこかに放り込んでおけばいいのでは?
URLリンク(docs.nullpobug.com)

30:nobodyさん
12/02/10 04:07:32.68
>>27
memcached

31:nobodyさん
12/02/17 18:11:15.99
この本読んだひといますか?
感想聞かせてください

WSGIウェブプログラミング
URLリンク(www.amazon.co.jp)

書評悪すぎてわろす

32:nobodyさん
12/02/19 09:53:00.31
URLディスパッチャがめんどくさすぎる

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

34:nobodyさん
12/02/20 10:17:08.89
主受け尾d、ってなんだ・・タイポした

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

日本語の1.0 documentation読んでるとなんかすげー厳しいなあと思うかも知れないけど
1.3documentationの
URLリンク(docs.djangoproject.com)
を読めば1.0にはなかった
django.contrib.staticfiles
っていう仕組みもある。

35:nobodyさん
12/03/06 19:10:17.43
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:nobodyさん
12/03/06 19:21:31.04
defaultとかあったと思うが,Metaでやるとできないか
JavaScriptでやるか,12をテンプレートでレンダ

37:nobodyさん
12/03/06 22:42:25.29
>>36さん

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

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

みなさんはDjangoの情報収集はどこでされてますか?
GoogleのDjangoグループは全然更新されてないんで、困ってます...

38:nobodyさん
12/03/08 20:42:59.17
たしかフォームクラスの__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:nobodyさん
12/03/08 23:23:35.64
ごめん嘘書いてた

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:nobodyさん
12/03/12 10:05:17.14 C6qcHZnA
Django1.2を使ってます
テンプレートの使い方で質問していいでしょうか?
ちょっと困ってます

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

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

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

どうか解決法をご存知の方ヒントをお願いします。
方法がなければデータそのものを加工して対処します。

41:nobodyさん
12/03/12 15:15:04.03
簡単なマッパーかますのが一番楽じゃないかな
URLリンク(tokibito.bitbucket.org)
これとかオススメ

42:nobodyさん
12/03/12 15:23:09.23 C6qcHZnA
うわーー 最初からこれ使えばよかったーーー

43:nobodyさん
12/03/12 23:05:19.96 7b+JBvuO
テーブル生成についての質問なのですが
djangoでテーブルを動的に生成することってできますか?

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

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

なにかうまい方法はないでしょうか…?
(すみませんが設計で回避というのは無しでお願いします)

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


45:nobodyさん
12/03/21 00:32:52.23
いよいよDjango1.4正式版でるね

46:nobodyさん
12/03/21 03:08:20.87
なにが変わるの?

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

48:nobodyさん
12/03/23 17:41:38.22
djangoが楽すぎて他のフレームワークいじる気力なくなる

49:nobodyさん
12/03/27 17:54:08.18
django使ってるのって、日本で10人ぐらい?

50:nobodyさん
12/03/28 07:08:10.63
すごい優れたフレームワークだと思うので実践投入しようとしてるんだけど。

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

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

githubとかでもいいからDjango使っているプロジェクトとかソースコード読んで参考にしたい。
誰か情報共有してくれー!

51:nobodyさん
12/03/28 10:08:47.56
そもそもPython使ってる人が日本に20人ぐらいしかいないから。

52:nobodyさん
12/03/28 11:50:18.09
俺もいるから21人だな

53:nobodyさん
12/03/28 13:38:31.77
いや、お前入れて20人だから

54:nobodyさん
12/03/28 13:39:31.42
こういう地域による過疎フレームワークってどうやって情報共有すればいいんだろうね

55:nobodyさん
12/03/28 13:54:02.73
英語読めれば問題ない

56:nobodyさん
12/03/29 12:41:43.24
電気無ければただの箱的な?

57:50
12/03/29 16:31:42.56
Django使うような奴らは国内なんかが住処じゃねーって!?

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

面白いじゃないの!実践投入させてもらうぜ!

58:nobodyさん
12/03/29 17:30:04.77
世界目指そうぜ

59:nobodyさん
12/03/29 17:54:31.44
ケータイサイトとか作るんじゃなければいいかもね。
今さらケータイサイトとか作ってる場合じゃないけどな。

60:nobodyさん
12/04/01 02:28:54.90 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

61:nobodyさん
12/04/01 19:41:26.66
django用にクラス作りなおすしかないんじゃないかな

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

63:nobodyさん
12/04/01 20:44:17.44 1e7s1g7e
>>62
> モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
> モデルにdataクラスへの入出力追加するだけだし。

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

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

こんなクラスだとしたら、これをプロパティにしたモデルクラスって
具体的にどうなるんでしょうか?

64:nobodyさん
12/04/02 08:58:12.36
データベースへのアクセスはdjangoのORMを使うの?
それとも別に用意されてるの?

65:nobodyさん
12/04/02 23:50:34.00 VGFPGSaK
>>64
ORマッパーが先に決まっているわけではないです
djangoのモデルクラスを利用して既にあるデータクラスを
そのまま使える方法があれば一番いいですし
それが無理そうなら別の方法を考える、という感じです。

昨日調べてたらSQLをそのまま発行することは出来るみたいなので、
資産の有効利用を優先するならそれもありかな、と少し考えています。

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

67:名無しさん
12/04/03 20:20:49.11 1QQjv7Jc
寛解に至らない

68:nobodyさん
12/04/05 14:53:34.26 zbL83UyR
偉い人へ:
djangoforms の BooleanField で checkboxを出すとHTMLが、
「ラベル □」になちゃうんだけど、「□ ラベル」にするのってどうやるの?

69:nobodyさん
12/04/05 21:04:53.80
自分はその辺の面倒くさいところテンプレートでやってる
widgetを書く方法もあるけどテンプレートの方がしっくりくる

class Hoge(Model):
 name = BooleanField()

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

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

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

この辺も参考にしてみて
URLリンク(docs.djangoproject.com)

70:nobodyさん
12/04/05 22:30:34.63 zbL83UyR
>>69
自分でテンプレートに展開するのって自由で素敵ですね。
トライしてみます。偉い人ありがと。


71:nobodyさん
12/04/07 16:34:57.81 BeoWQwVe
他のスレで質問したところ、こちらへ誘導されました: スレリンク(php板:725-726番)
以下、上記URLより再掲です。

---

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

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

● import の書き方がわからない
大雑把にいって handler の中身が Controller, libs の中身が Model にあたります。
main.py で handlers1.py を、handler1.py で user_auth.py を、それぞれ import したいです。
・ import 文の書き方を教えてください。__init__.py が必要になるのであれば、内容も教えてください。


72:71
12/04/07 16:35:33.15
ファイル構成は下記のようにする予定です:
- 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:nobodyさん
12/04/08 01:26:13.09
相対じゃなくて絶対でやるといいよ

相対 {% 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:nobodyさん
12/04/08 01:27:37.88
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:nobodyさん
12/04/08 02:13:49.24
それと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:71
12/04/08 10:24:06.17
>>73-75
回答ありがとうございます。今夜ためしてみます。

77:nobodyさん
12/04/08 23:48:05.79 Iqgx/7Sd
なんか馬鹿みたいな質問なんですけど

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

ちなみにwebサーバーはapacheを使ってます
(apacheとdjangoをmod wsgiで連携)

78:nobodyさん
12/04/08 23:54:59.79
そいうのはsettings.pyに書いとくといいです
settings.pyにHOGE="hoge"としておくと

from django.conf import settings
settings.HOGE

と言った感じで参照できます

79:nobodyさん
12/04/09 01:35:18.14 8JTXJRql
なるほど!
ありがとうございました!

80:nobodyさん
12/04/10 22:13:14.47 nA+GylzO
gae/p の blobstoreで、アップロードのついでに POSTした日本語が文字化けする障害って
まだ直っていないようですね・・
何年か前に Google-App-Engine-Japanに障害報告が上がってるのに。
仕事遅いなぁ中の人。

この障害への回避策って、Base64エンコードぐらいでしょうか?

81:nobodyさん
12/04/11 02:44:16.83
gaeでdjango使うのしんどくない?

82:nobodyさん
12/04/11 10:56:01.11 WgNPCZsm
>>81
何とか使ってます。

83:nobodyさん
12/04/13 13:19:14.34 0/eMv/lO
超伸びてるし…
>>34
ありがとうございました

84:nobodyさん
12/04/13 13:23:02.97
phpディスられてる割りにユーザ増えんね…

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

86:nobodyさん
12/04/13 23:40:44.62
ruby使ってる人=はてな民=常に上から目線みたいなイメージがあって、どうもrubyに触手が動かない

87:nobodyさん
12/04/14 00:46:37.29
>>84
戦車に例えると
PHP4はT34/76
PHP5はT34/85

Railsはパンター
DjangoはタイガーI
って感じだからな。
JavaとかASP.NETはM4と言うか米軍


88:nobodyさん
12/04/14 02:27:39.44
>>87
例えがむつかしい。

89:nobodyさん
12/04/14 02:51:40.51
言語とフレームワークごちゃまぜなのがいただけない

90:nobodyさん
12/04/14 02:57:17.67
>DjangoはタイガーI

重そうww
喩えが非常に良くないw

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


92:nobodyさん
12/04/14 23:30:25.46
begin end はPascal系だろ

93:nobodyさん
12/04/16 15:34:39.61
1.4文書にはリリースするならmod_wsgi使えって書いてあるね
URLリンク(docs.djangoproject.com)

94:nobodyさん
12/04/16 21:36:37.11
1.4でstartprojectしたら

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

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

95:nobodyさん
12/04/16 23:17:56.03
mod_wsgiだとDjangoがなぜかApacheで走らなくて
mod_pythonで動かしてる俺にはヤバいニュースだな。

ドキュメント通りにインスコしても何も表示されないんだよなー。

96:nobodyさん
12/04/17 00:08:34.20
nginx+uwsgiマジオススメ

97:nobodyさん
12/04/17 02:08:18.68
>>94>>95の時刻逆になってるぞ

mod_wsgi系の設定はここにかいてあるっぽい
URLリンク(docs.djangoproject.com)

98:nobodyさん
12/04/17 02:09:06.53
>>94>>95の時刻逆になってるぞ

勘違いでした^^;

99:nobodyさん
12/04/18 00:34:32.35
1.4かなり変わってんだな
urlテンプレートタグとGeneric View直すの面倒かった


100:nobodyさん
12/04/18 12:43:31.07 Wype6WQ2
uwsgi調べてたら、タイムアウト指定する引数がharakiriとか出てきてワロタ

101:nobodyさん
12/04/19 02:40:41.54
これいいな
メモリリークが一目でわかる
URLリンク(github.com)

102:nobodyさん
12/04/19 20:46:19.69 1eA2rign
申し訳なす、テンプレートの書き方なんですが、
例えばUserオブジェクトに属性email、アクセサemail()があるとき
{{ user.email }} とは書けるけど {{ user.email() }} だとエラーになります。

TemplateSyntaxError: Could not parse the remainder: '()' from 'user.email()'

これはどうしてなんでしょうか。
ドキュメントにはテンプレートエンジンが.(dot)を見つけたとき以下の順で評価を試みるとあるけど
関係してるのかなんだかさっぱり・・・
辞書の照合 (lookup)=>属性の照合=>メソッドの呼び出し=>リストをインデクス指定して照合

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

104:nobodyさん
12/04/26 07:06:17.63 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を呼び出すことはできないみたい。
何か良い方法ないでしょうか?

105:nobodyさん
12/05/04 17:07:52.09
>>86
遅レスだが動くのは食指だと思うの。

106:nobodyさん
12/05/04 21:43:09.08
>>105
ネタにマジレスとかどうかと思うの

107:nobodyさん
12/05/09 15:53:29.80
Djangoを、Ruby on Railsと比較した場合
良い所と悪い所を教えてください。

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

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

110:nobodyさん
12/05/11 08:34:20.27
2回も同じループさせるとか無駄じゃね?

111:nobodyさん
12/05/11 09:56:32.07
1つのデータをテーブル表示 & グラフ表示 (のために JavaScript 埋め込み) したいのです。

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

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

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

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

116:nobodyさん
12/05/11 21:08:24.13
バルス

117:nobodyさん
12/05/12 23:49:26.94 Ss+1w/F4
職場の先輩がジュワンゴって発音するんですけど
どうしたらいいですか?

118:nobodyさん
12/05/13 00:03:13.19
ド素人が今からDjangoを始めるなら1.3と1.4のどちらがオススメですか?

119:nobodyさん
12/05/13 00:27:12.18
わかりません><

120:107
12/05/13 00:33:05.88
レスありがとう

>>108
日本語の情報が少ないのはしょうがないですね。
でも公式サイトの英語のドキュメントは丁寧に書かれている気がする。

>>112
DjangoはMVCのViewの部分が使いやすいってことですか?
Rails遅いってのは聞いたことがあります。
大部分はRubyの原因かもしれないけど。

>>118
俺もDjangoこれからだけど素直に最新の1.4でいいんじゃないの。
覚えてる間に次のバージョンでるでしょうw

121:nobodyさん
12/05/13 04:47:18.09
>>120
Djangoを学習している間にPyramidがメジャーになるのではという不安が。

122:nobodyさん
12/05/13 20:10:42.88
>>112みたいに短絡的な結論出せる人が羨ましい

123:nobodyさん
12/05/13 22:00:06.06 XIq+bFUq
djangoで異なる複数のリクエスト間で
(巨大な)オブジェクトをメモリ上に共有する方法ってないですか?

オブジェクトが小さければキャッシュ機能でmemcachedを使う
というのが良さそうですが、非常に大きい(数ギガ)オブジェクトを
共有したいのです
(memcachedだとオブジェクト一つのサイズには上限があるので
無理だと思ってるのですが、そんなことないですか?)

小さなオブジェクトが大量にあるのではなく
一つの巨大なオブジェクトというのが外せない条件になってます。
具体的な上限もなくて、システム上に展開できるサイズなら
何Gでも利用したいとなっています。

やりたいことのイメージは

「データを加工せよ」というリクエストを一回だけ発行して(この処理は遅くてもいい)
それ以降は
「加工したデータをグラフAにして描写」
「加工したデータをグラフBにして描写」
「加工したデータを更に加工」
というリクエストを発行

というものです。
この加工データが巨大なオブジェクトになっていて
複数のリクエストに対して高速に処理するために
メモリ上に共有させておきたいのです

何か上手い方法ないでしょうか?

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

125:nobodyさん
12/05/13 23:39:37.00 XIq+bFUq
>>124
不勉強で申し訳ないのですが
キューというのはメッセージ・キューイングと呼ばれる機能のことでしょうか?

具体的なイメージがよくわかってないのですが、仮にやりたかったことを

加工リクエスト
APPサーバがDBからデータ取得
取得したデータを加工
加工データを保持(この方法がわからなかった)
結果(加工しましたというメッセージ)をレスポンス

グラフAの描写リクエスト
APPサーバが保持されていた加工データをグラフ化
結果(グラフ)をレスポンス

として書いた場合、124さんの方法はどのような流れになるのでしょうか?
加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
するということですか? またその場合、加工データは異なるリクエスト間で
共有されるのでしょうか?

質問ばかりですみません

126:nobodyさん
12/05/14 09:28:20.64
>>125
> 加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
そう。仮に物理サーバはいっしょでも論理的に役割分担させる。
保持はGBオーダなデータ加工だし、mmapにしとけばファイルにも逃がせられる。

> するということですか? またその場合、加工データは異なるリクエスト間で
> 共有されるのでしょうか?
フロントへの加工リクエストに対して同じ対象の描写リクエストがだせるってことは
なんらかの識別子が存在してるはずで、バックエンドでも同様にやればなんとでもできる。

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

128:nobodyさん
12/05/15 21:42:51.74
mmapじゃね。pythonはよくは知らんけど。

129:nobodyさん
12/05/16 00:11:15.40
>>126
返信遅れました

正直まだ理解できてない部分があるのですが
何とかがんばってみます
(オブジェクトがリクエスト間で共有できるということは
バックエンド用のプロセスが新たに走っている
ことになるのですよね?)

もし「ここを見ればいい」というサイトがあれば
教えていただけるとありがたいです

130:123
12/05/16 00:17:58.30
ここは読んでおきました
URLリンク(d.hatena.ne.jp)

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


131:nobodyさん
12/05/29 23:13:19.69
で、djangoとrailsあなたたちはどっちが良いと思ってるの?


132:nobodyさん
12/05/31 21:16:34.98
どっちもどっちじゃない?

133:nobodyさん
12/06/01 02:05:04.95
URLリンク(code.djangoproject.com)
utf8mb4対応くるだろうか

134:nobodyさん
12/06/17 15:42:24.03 VLPHimKQ
eclipseで実行して「It worked!」って表示されるけど、index.htmlが表示されない
なぜ表示されないのでしょうか(htmlファイル等はバグ等なく作成済み)

eclipse 3.7.2
django 1.3.0

135:名無し
12/06/18 10:55:27.84 AXkhynzr
今人気の芸能人相性診断♪

楽しめる人気の占い発見しちゃいました。
いくつか質問に答えるだけであなたにピッタリの人がわかっちゃう。
気になったかたはチェックしてみてね。
URLリンク(232bs7.info)

136:nobodyさん
12/06/20 01:26:01.52
>>134
urls.py見直したら?

137:nobodyさん
12/07/07 15:38:34.13 KIWI0EBX
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:nobodyさん
12/07/19 00:34:40.11
インスコはrailsよりラクだよなw
な?・・・


139:nobodyさん
12/07/19 20:17:21.87
pip install django

140:nobodyさん
12/07/25 01:35:10.73
djangoって、単純なことでハマることが多い。

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

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

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

143:nobodyさん
12/07/27 16:53:31.64 cxcs/EZn
MySQlの設定するときに決まってpasswordが打ち込めなくなるんだけど知ってる?

escで逃げちゃってるからきっとadminサイト入れない。

144:nobodyさん
12/07/28 15:55:26.49
>143
DjangoとSQLのバージョン書こう

つうか、設定ファイルに書けばよくないか

145:nobodyさん
12/08/09 00:46:11.95 CMriqrOl
Djangoの勉強を始めたばかりなのですが、わからないことがあり質問させて頂きます。

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

よろしくおねがいします。

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

147:nobodyさん
12/08/24 00:33:32.43
>>145
request.userからユーザーオブジェクト拾って入れる
ForeignKey(django.models.auth.models.User)でいいと思うけど
URLリンク(djangoproject.jp)

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

149:nobodyさん
12/08/31 19:16:38.98 vOsjd0I6
日本でPython使ってる人なんて300人ぐらいしかいないもの

150:nobodyさん
12/09/03 10:36:41.32 SqdE+p9Q
ImageFieldのheight_fieldとwidth_fieldは何をするためのものになるのでしょうか?

URLリンク(docs.nullpobug.com)
このページの説明では何を言っているのかよくわかりませんでした。

151:nobodyさん
12/09/08 09:07:34.56
おひさしブリーフなんだけどまだデファクトなん?

152:nobodyさん
12/09/09 12:55:38.23 So5recQR
最近pyramid使い始めた

153:nobodyさん
12/09/10 10:18:25.23 SzEanAFy
CakePHPのセッションはUAと結び付けられているようですが、Djangoはそのような機能はありますか?

ブラウザのクッキーファイルが漏れて、セッションIDが奪われた時の対策としてどのようなものがあるか調べております。

154:nobodyさん
12/10/01 09:36:29.13 Yqd8lXeW
URLFieldに入れる前に、URLFieldに入る値かどうかを確認したいのですが、そのようなことはできますか?

155:nobodyさん
12/10/01 15:44:59.22
>>148
djangoさんが優秀すぎてグチるネタも無いからじゃないかな?

156:nobodyさん
12/10/02 13:29:26.30
書きこんでも誰も答えてくれないので書き込みません

157:nobodyさん
12/10/07 11:17:06.65
>>149
> 日本でPython使ってる人なんて300人ぐらいしかいないもの

お前ら一人ひとりがこの精鋭たちなんだな……
URLリンク(www.youtube.com)

158:nobodyさん
12/10/22 23:38:00.87
デプロイの定番ってどんな感じなのでしょうか
nginxとgunicornをネットではよく見かける

159:nobodyさん
12/10/25 14:49:20.54
>>158
俺も知りたい。
nginxにしようか無難にapacheのままにしとくか迷ってる。
DBはPostgresが主流なのかな。

160:nobodyさん
12/11/15 09:02:26.77 O5OuIbET
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:nobodyさん
12/11/21 21:48:36.75
Dajngoとか3日もあれば使いこなせるだろう
語ることすらないわ

162:nobodyさん
12/11/22 00:15:52.74
じゃあ質問に答えてやれよ

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

164:nobodyさん
12/11/22 02:32:21.53
まだリリースされてないけど、1.5で対応するみたいよ URLリンク(docs.djangoproject.com)

165:nobodyさん
12/11/28 13:22:36.30
>160
URLリンク(blog.madoro.org)

166:nobodyさん
12/11/29 14:03:21.70
Djangoで初期にDBに保存しておきたい値はどのように設定すればいいのでしょうか?

167:nobodyさん
12/11/29 19:16:21.88
DBに直接書き込む

168:nobodyさん
12/11/30 08:04:28.86
Djangoには初期値を設定する方法は容易されていないのでしょうか?

そうなると、スクリプトを設置する際に、syncdbしたあとに書きこみスクリプトを実行し、そのあとにスクリプトを動かす必要があるという事でしょうか?

169:nobodyさん
12/11/30 16:25:00.13
問答無用でselect文発行するソースでも書いてるのか?

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

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

172:nobodyさん
12/12/01 15:45:47.56
本番アップデートするたびに初期化されるのか。
胸熱

173:nobodyさん
12/12/05 05:21:33.65
>>168
fixture かな

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

175:nobodyさん
12/12/19 00:56:44.87
>>174
GoogleAppEngine

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


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

177:nobodyさん
12/12/26 17:54:39.43
Django1.4を利用してDjangoの勉強をしております。
複数のデータベースを使った実験をしようと、
URLリンク(www.ianlewis.org)
こちらを参考に特定のモデルの振り分けを試してみたのですが、
django.core.exceptions.ImproperlyConfigured: Error importing database router TestRouter: "cannot import name connection"
というエラーが出てしまいます。

検索すると、
URLリンク(stackoverflow.com)
ここがみつかり、DATABASE_ROUTERSの上の行に
from django.db import connections
を追加するとエラーが出なくなります。
ですが、setting.pyの最上部に追加すると同じエラーが出ます。

これはなぜDATABASE_ROUTERSの上の行でなければいけないのでしょうか?

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

179:nobodyさん
12/12/29 03:06:45.67 G1+BbVGH
馬鹿には無理

180:nobodyさん
13/01/05 18:01:55.06
アプリ起業 iPhone C#まとめ Ver 1.5
URLリンク(tinyurl.) com/9w97424

181:nobodyさん
13/01/07 12:07:01.80
ModelFormを使ってフォームを作成しています。

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

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

183:nobodyさん
13/01/12 08:19:26.89
どなたかsocial-pluginにmixiの対応をつけてくれませんか。

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

185:nobodyさん
13/01/19 09:59:59.34
fixtureを使ってUserを追加したいのですが、どのように書けばよいのでしょうか?

186:nobodyさん
13/01/23 01:18:22.02
>>185
1~2個User作って、manage.py dumpdataしてフォーマット見てみたら?

187:nobodyさん
13/01/23 13:23:40.95
1.5全然来ないな

188:nobodyさん
13/02/12 20:07:21.93
Southはpython3非対応?

189:房州
13/02/17 18:07:03.35
俺は教えねえよ。俺は坊やの先生じゃないからな。お前もPy人なら自分で気づけ

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

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

192:nobodyさん
13/03/06 22:36:17.01
>>190
同意

193:nobodyさん
13/03/11 00:25:01.26
>>190
ModelのところだったらModelのドキュメントを読みながら進めたりするとわかりやすいよ

194:nobodyさん
13/03/11 00:26:00.34
django-social-authがPython3使えないみたいなんだがほかにいいライブラリって無い?
OAuth2&Python3で

195:nobodyさん
13/03/22 18:57:26.97
test

196:nobodyさん
13/03/25 19:52:29.13
おもろいけどすぐ飽きる
URLリンク(portal.nifty.com)

197:nobodyさん
13/04/04 12:10:00.96
>>190
いまいち体系化されてないんだよな。
middlewareやらsignalやらclass-based viewやら、
ちょっと奥まったところにいくとソースみるしかなくなる。

でもdjango自体はまだずっとマシで
そのオープンソースアプリになると全くドキュメントなかったりするから。
pythonのこういうところが普及しない原因なんだろうな。

198:nobodyさん
13/04/04 16:51:07.95 mlSWjspl
>>197
はげど(死語)

199:nobodyさん
13/04/04 17:49:08.54
馬鹿には無理


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch