11/12/18 22:42:56.54 .net
で、今一番人気はどのフレームワークなの?
4:nobodyさん
11/12/19 00:34:25.25 .net
>>3
Djaンゴwwwwwww
5:nobodyさん
11/12/19 23:04:09.58 .net
↑マジで?
Turboの方がいいとか前聞いたことあったけど、やっぱDjangoなのか
速度も速いし、ライブラリのように使えて便利とか聞いて、そうなのかと思った記憶がある
6:nobodyさん
11/12/26 11:41:05.70 .net
同時並行で2つのアプリを作るならポート番号は別のにしないとダメ?
交互に起動すれば出来ると思ったんだけど、できなかった。
7:nobodyさん
11/12/26 12:40:03.88 .net
>>6
ポートは別にした方が無難。
同じポートを使いまわす場合は、ソケットオプションのreuse-addrを有効にしないと、
サーバが終了しててもしばらくの間はそのポート番号が使えない事がある。
grep してみたところ、djangoにそれっぽいオプションはなかった。
8:nobodyさん
11/12/26 14:56:38.54 .net
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 .net
>>7
ありがと
8000と8080で頑張るわ
10:nobodyさん
11/12/26 15:48:49.02 .net
補足で、ポートを分けた方がいい理由としては、もうひとつ。
同じポートだとブラウザのキャッシュのアドレスが混ざってしまい、
別アプリ側のキャッシュを読んでしまう可能性があります。
11:nobodyさん
11/12/27 06:06:43.86 .net
ラインハルトさま
12:nobodyさん
11/12/27 19:32:02.12 .net
googleトレンドでフレームワークの比較したしたに
密かに django の数を支えてくれてるかも知れないお方ですね(違
13:nobodyさん
12/01/02 04:48:35.54 .net
>>11
生きる権利を行使するなら
それに見合った義務を果たせ
14:nobodyさん
12/01/03 09:37:05.06 .net
複合キーが使えないとかアホすぎる。、
15:nobodyさん
12/01/04 21:31:19.42 .net
同じ汎用ビューを複数使うと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 .net
djangoって2chじゃぜんぜん盛り上がってないですね
17:nobodyさん
12/01/09 10:09:58.37 .net
>>16
基本的に仕事ないからな
18:nobodyさん
12/01/10 00:56:59.16 .net
pythonで仕事できる会社少ないイメージあるね。
一度はpythonで食ってみたいもんだが。
19:nobodyさん
12/01/14 12:34:09.69 .net
あまりに過疎りすぎるとフレームワークやらライブラリが発展しなくなるのが心配。
海外ではそれなりに活性化されてるのかな?
20:nobodyさん
12/01/15 16:43:29.95 .net
日本はjavaかphpだけだよな
pythonのwebフレームワークはdjangoが一番無難とおもう
21:nobodyさん
12/01/21 04:24:28.26 .net
Djangoのルールに乗っかれないとバッドノウハウの塊になっちゃうのがなぁ。
(認証でUserテーブルを独自に定義したい場合とか)
他にいいフレームワークないですかね。
Flaskって奴もよさそうだけど、ちょっと軽量すぎる・・・
TurboGearsはどうなんだろう。
それとも素直にRailsとかCakePHP使っとくべきですかね。
22:nobodyさん
12/01/21 04:47:17.81 .net
Pylonsってのもあるのか。
23:nobodyさん
12/01/21 07:22:45.45 .net
pylonsはオワコン
pyramid
24:nobodyさん
12/01/21 07:23:25.54 .net
>>21
werkzeug
25:nobodyさん
12/01/22 21:23:50.03 .net
>>21
それはどんなフレームワークでも同じじゃね?
26:nobodyさん
12/02/07 23:14:28.71 .net
django-cmsって使ってる人いる?
27:nobodyさん
12/02/09 22:59:21.30 lRLr0cSK.net
サーブレットのように、あるリクエストで生成したインスタンスを
レスポンスが完了した後も残しておくことって出来ないですか?
出来ない場合、同じようなことをやろうと思ったらキャッシュ機能を
使うしかないですかね?
キャッシュだとシリアライズのコストの分が余計にかかるので
できればサーブレットのようにプロセスが常駐してインスタンスを
そのままメモリ上に持たせておきたいと思ったのですが・・・
28:nobodyさん
12/02/09 23:21:54.04 /iRWC1gw.net
タコですが質問です。
djangoって静的ファイルはhttpdでやれよって思想だと思うんですが、
セッション管理によるアクセス制限
(例えばdjangoでログイン中のみapacheから静的ファイルにアクセスできるようにする)
っていう仕組みはどのように実装したらいいんでしょうか?
29:nobodyさん
12/02/09 23:24:12.52 /iRWC1gw.net
>>27
私はタコですがセッションのどこかに放り込んでおけばいいのでは?
URLリンク(docs.nullpobug.com)
30:nobodyさん
12/02/10 04:07:32.68 .net
>>27
memcached
31:nobodyさん
12/02/17 18:11:15.99 .net
この本読んだひといますか?
感想聞かせてください
WSGIウェブプログラミング
URLリンク(www.amazon.co.jp)
書評悪すぎてわろす
32:nobodyさん
12/02/19 09:53:00.31 .net
URLディスパッチャがめんどくさすぎる
33:nobodyさん
12/02/20 09:54:33.74 .net
>>28
djangoの「思想」は無視すればいいと主受け尾d。
URLに対応するファイルを読み込んでユーザチェックで分岐して
renderする処理を加えればいいだけじゃないの。
簡単にできるでしょう。
34:nobodyさん
12/02/20 10:17:08.89 .net
主受け尾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 .net
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 .net
defaultとかあったと思うが,Metaでやるとできないか
JavaScriptでやるか,12をテンプレートでレンダ
37:nobodyさん
12/03/06 22:42:25.29 .net
>>36さん
レスありがとうございます。
<input type="hidden" name="shop" value="{{ shop_id }}>
みたいなテンプレートでやってみたんですが、Validateでエラーになってしまったもので...
Djangoマニュアルの英語版も読んだんですが、こういうところが書かれてないんですよねぇ。
どこかノウハウが集まってるサイトとかないんでしょうか。
みなさんはDjangoの情報収集はどこでされてますか?
GoogleのDjangoグループは全然更新されてないんで、困ってます...
38:nobodyさん
12/03/08 20:42:59.17 .net
たしかフォームクラスの__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 .net
ごめん嘘書いてた
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.net
Django1.2を使ってます
テンプレートの使い方で質問していいでしょうか?
ちょっと困ってます
dataA.dataB[0].dataC を取り出す方法です。
[0]という表記がシンタックスエラーを出すので調べたらスライスフィルタを使えと
dataA.dataB|slice:"0:1" これだとdataBは取り出せますがここから詰まってます
どうか解決法をご存知の方ヒントをお願いします。
方法がなければデータそのものを加工して対処します。
41:nobodyさん
12/03/12 15:15:04.03 .net
簡単なマッパーかますのが一番楽じゃないかな
URLリンク(tokibito.bitbucket.org)
これとかオススメ
42:nobodyさん
12/03/12 15:23:09.23 C6qcHZnA.net
うわーー 最初からこれ使えばよかったーーー
43:nobodyさん
12/03/12 23:05:19.96 7b+JBvuO.net
テーブル生成についての質問なのですが
djangoでテーブルを動的に生成することってできますか?
ユーザ情報(これはカラム固定)がDBに入っていて
そこからある計算を行ってデータを作るのですが
それがカラム数が動的に変わってしまうのです
要するに動的に create を発行すればいいのですが
djangoの場合だとモデルクラスが対応してないとダメですよね…
というよりモデルクラスが先にあって、そこからテーブルを
作成するのが基本ですよね…
なにかうまい方法はないでしょうか…?
(すみませんが設計で回避というのは無しでお願いします)
44:nobodyさん
12/03/13 03:34:44.28 .net
発想を変えて動的にモデルをつくるようにしてみては?
モデルのプロパティはJSONとかにシリアライズしてblobで保存とか
MongoDBとかでも動的に変更できるけど茨の道
45:nobodyさん
12/03/21 00:32:52.23 .net
いよいよDjango1.4正式版でるね
46:nobodyさん
12/03/21 03:08:20.87 .net
なにが変わるの?
47:nobodyさん
12/03/21 15:05:16.44 .net
結構機能追加されてんね
1.3のデータベース周りの大幅アップデートに比べると霞むけど
テンプレートタグのelifは有難すぎ
48:nobodyさん
12/03/23 17:41:38.22 .net
djangoが楽すぎて他のフレームワークいじる気力なくなる
49:nobodyさん
12/03/27 17:54:08.18 .net
django使ってるのって、日本で10人ぐらい?
50:nobodyさん
12/03/28 07:08:10.63 .net
すごい優れたフレームワークだと思うので実践投入しようとしてるんだけど。
和書は1.0前のしかないし、Django Book 2.0すら和訳途中で頓挫してるし…
Googleグループも過疎ってるし。日本語で情報共有できないのが辛い。
英語だけどKindleの電子書籍はいっぱい売ってるし、海外フォーラムでは話題が多いんだよね。
逆に、今なら日本語Django界で名を挙げるチャンスなの?w
githubとかでもいいからDjango使っているプロジェクトとかソースコード読んで参考にしたい。
誰か情報共有してくれー!
51:nobodyさん
12/03/28 10:08:47.56 .net
そもそもPython使ってる人が日本に20人ぐらいしかいないから。
52:nobodyさん
12/03/28 11:50:18.09 .net
俺もいるから21人だな
53:nobodyさん
12/03/28 13:38:31.77 .net
いや、お前入れて20人だから
54:nobodyさん
12/03/28 13:39:31.42 .net
こういう地域による過疎フレームワークってどうやって情報共有すればいいんだろうね
55:nobodyさん
12/03/28 13:54:02.73 .net
英語読めれば問題ない
56:nobodyさん
12/03/29 12:41:43.24 .net
電気無ければただの箱的な?
57:50
12/03/29 16:31:42.56 .net
Django使うような奴らは国内なんかが住処じゃねーって!?
日本じゃ王道はRubyでRails。
Pythonなんかインデント言語って馬鹿にされて、
日本じゃ誰も評価されないDjango使う馬鹿は相手が世界ってことか?
面白いじゃないの!実践投入させてもらうぜ!
58:nobodyさん
12/03/29 17:30:04.77 .net
世界目指そうぜ
59:nobodyさん
12/03/29 17:54:31.44 .net
ケータイサイトとか作るんじゃなければいいかもね。
今さらケータイサイトとか作ってる場合じゃないけどな。
60:nobodyさん
12/04/01 02:28:54.90 2batclMo.net
ええと…
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 .net
django用にクラス作りなおすしかないんじゃないかな
62:nobodyさん
12/04/01 20:24:12.51 .net
モデルの中にdataクラスいれるのが単純かなぁ。(コンポジション?)
モデルにdataクラスへの入出力追加するだけだし。
63:nobodyさん
12/04/01 20:44:17.44 1e7s1g7e.net
>>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 .net
データベースへのアクセスはdjangoのORMを使うの?
それとも別に用意されてるの?
65:nobodyさん
12/04/02 23:50:34.00 VGFPGSaK.net
>>64
ORマッパーが先に決まっているわけではないです
djangoのモデルクラスを利用して既にあるデータクラスを
そのまま使える方法があれば一番いいですし
それが無理そうなら別の方法を考える、という感じです。
昨日調べてたらSQLをそのまま発行することは出来るみたいなので、
資産の有効利用を優先するならそれもありかな、と少し考えています。
66:nobodyさん
12/04/03 00:06:10.55 .net
カスタムマネージャでなんとかなるかも
マネージャをゴリゴリ書く必要あるけれども
ただちっと面倒くさいよね何やるにしても
67:名無しさん
12/04/03 20:20:49.11 1QQjv7Jc.net
寛解に至らない
68:nobodyさん
12/04/05 14:53:34.26 zbL83UyR.net
偉い人へ:
djangoforms の BooleanField で checkboxを出すとHTMLが、
「ラベル □」になちゃうんだけど、「□ ラベル」にするのってどうやるの?
69:nobodyさん
12/04/05 21:04:53.80 .net
自分はその辺の面倒くさいところテンプレートでやってる
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.net
>>69
自分でテンプレートに展開するのって自由で素敵ですね。
トライしてみます。偉い人ありがと。
71:nobodyさん
12/04/07 16:34:57.81 BeoWQwVe.net
他のスレで質問したところ、こちらへ誘導されました: スレリンク(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 .net
ファイル構成は下記のようにする予定です:
- 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 .net
相対じゃなくて絶対でやるといいよ
相対 {% 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 .net
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 .net
それと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 .net
>>73-75
回答ありがとうございます。今夜ためしてみます。
77:nobodyさん
12/04/08 23:48:05.79 Iqgx/7Sd.net
なんか馬鹿みたいな質問なんですけど
djangoでwebアプリを作ったときに
定数とか設定ファイルみたいなものを用意して
webサーバー起動時にそれを一度だけ読み込んだら
アプリが終了するまではその値をいつでも参照できるように
しておくことってできないですか?
ちなみにwebサーバーはapacheを使ってます
(apacheとdjangoをmod wsgiで連携)
78:nobodyさん
12/04/08 23:54:59.79 .net
そいうのはsettings.pyに書いとくといいです
settings.pyにHOGE="hoge"としておくと
from django.conf import settings
settings.HOGE
と言った感じで参照できます
79:nobodyさん
12/04/09 01:35:18.14 8JTXJRql.net
なるほど!
ありがとうございました!
80:nobodyさん
12/04/10 22:13:14.47 nA+GylzO.net
gae/p の blobstoreで、アップロードのついでに POSTした日本語が文字化けする障害って
まだ直っていないようですね・・
何年か前に Google-App-Engine-Japanに障害報告が上がってるのに。
仕事遅いなぁ中の人。
この障害への回避策って、Base64エンコードぐらいでしょうか?
81:nobodyさん
12/04/11 02:44:16.83 .net
gaeでdjango使うのしんどくない?
82:nobodyさん
12/04/11 10:56:01.11 WgNPCZsm.net
>>81
何とか使ってます。
83:nobodyさん
12/04/13 13:19:14.34 0/eMv/lO.net
超伸びてるし…
>>34
ありがとうございました
84:nobodyさん
12/04/13 13:23:02.97 .net
phpディスられてる割りにユーザ増えんね…
85:nobodyさん
12/04/13 23:04:56.60 .net
日本だとrubyに流れるんだろうね
2.x系は日本語の扱い面倒くさいし
86:nobodyさん
12/04/13 23:40:44.62 .net
ruby使ってる人=はてな民=常に上から目線みたいなイメージがあって、どうもrubyに触手が動かない
87:nobodyさん
12/04/14 00:46:37.29 .net
>>84
戦車に例えると
PHP4はT34/76
PHP5はT34/85
Railsはパンター
DjangoはタイガーI
って感じだからな。
JavaとかASP.NETはM4と言うか米軍
88:nobodyさん
12/04/14 02:27:39.44 .net
>>87
例えがむつかしい。
89:nobodyさん
12/04/14 02:51:40.51 .net
言語とフレームワークごちゃまぜなのがいただけない
90:nobodyさん
12/04/14 02:57:17.67 .net
>DjangoはタイガーI
重そうww
喩えが非常に良くないw
91:nobodyさん
12/04/14 03:02:12.44 .net
>rubyに触手が動かない
ひどい偏見ながらbeginとかendとか見た時にMSのマクロ系連想しちゃって受け付けなかった
pythonってweb以外にも科学技術計算とか沢山あるしね
数の暴力でアホみたいにライブラリ充実させて、負けることは絶対無いと思う
googleさんもいるし…
92:nobodyさん
12/04/14 23:30:25.46 .net
begin end はPascal系だろ
93:nobodyさん
12/04/16 15:34:39.61 .net
1.4文書にはリリースするならmod_wsgi使えって書いてあるね
URLリンク(docs.djangoproject.com)
94:nobodyさん
12/04/16 21:36:37.11 .net
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 .net
mod_wsgiだとDjangoがなぜかApacheで走らなくて
mod_pythonで動かしてる俺にはヤバいニュースだな。
ドキュメント通りにインスコしても何も表示されないんだよなー。
96:nobodyさん
12/04/17 00:08:34.20 .net
nginx+uwsgiマジオススメ
97:nobodyさん
12/04/17 02:08:18.68 .net
>>94と>>95の時刻逆になってるぞ
mod_wsgi系の設定はここにかいてあるっぽい
URLリンク(docs.djangoproject.com)
98:nobodyさん
12/04/17 02:09:06.53 .net
>>94と>>95の時刻逆になってるぞ
↑
勘違いでした^^;
99:nobodyさん
12/04/18 00:34:32.35 .net
1.4かなり変わってんだな
urlテンプレートタグとGeneric View直すの面倒かった
100:nobodyさん
12/04/18 12:43:31.07 Wype6WQ2.net
uwsgi調べてたら、タイムアウト指定する引数がharakiriとか出てきてワロタ
101:nobodyさん
12/04/19 02:40:41.54 .net
これいいな
メモリリークが一目でわかる
URLリンク(github.com)
102:nobodyさん
12/04/19 20:46:19.69 1eA2rign.net
申し訳なす、テンプレートの書き方なんですが、
例えば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.net
勘違いしてました。Userオブジェクトには属性emailは存在せず、メソッドのみでした。
ということは、テンプレートに書くときはメソッド呼び出しにカッコはつけないということなのかな。
ぐぐってたら"丸括弧を付ける必要はありません"と書いてるページがあって
曖昧ではありますが、ひとまずそのつもりで進めてみますですm(_ _)m
104:nobodyさん
12/04/26 07:06:17.63 RMLosHkb.net
先生、質問です。
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 .net
>>86
遅レスだが動くのは食指だと思うの。
106:nobodyさん
12/05/04 21:43:09.08 .net
>>105
ネタにマジレスとかどうかと思うの
107:nobodyさん
12/05/09 15:53:29.80 .net
Djangoを、Ruby on Railsと比較した場合
良い所と悪い所を教えてください。
108:nobodyさん
12/05/10 12:15:07.36 .net
比べられるもんでもないけど
強いて言えば何か問題あったとき日本語情報沢山あるのがror
コード読んで解決するのがdjango
pythonかrubyの違いは好みだしね
109:nobodyさん
12/05/10 22:45:34.96 .net
テンプレートについて質問です。
{% for x in X %} ... {% endfor %}
の後に、もう1度
{% for x in X %} ... {% endfor %}
を記述したところ、前半は表示されるのに後半は何も表示されませんでした。1つのシーケンスは1回しか使えないのでしょうか?
110:nobodyさん
12/05/11 08:34:20.27 .net
2回も同じループさせるとか無駄じゃね?
111:nobodyさん
12/05/11 09:56:32.07 .net
1つのデータをテーブル表示 & グラフ表示 (のために JavaScript 埋め込み) したいのです。
112:nobodyさん
12/05/11 10:17:46.83 .net
>>107
FormフレームワークはDjangoが圧倒的に優秀
あとRailsはコマンドラインが糞遅い。
よってRailsを選択するメリットは皆無
113:nobodyさん
12/05/11 11:51:30.50 .net
>>109
そいうことやったことないから原因わからんけど同じループ回せられないならviewでレンダリングしたHTMLをテンプレートに渡してやったらどう?
render_to_stringとかで
114:nobodyさん
12/05/11 12:45:49.39 .net
せっかくテンプレートで役割分担してるんだから、まだXのコピーを用意する方がマシかも。
115:109 / 111
12/05/11 19:43:21.59 .net
原因がわかりました。リストを渡したつもりがイテレータを渡していました。これは一度ループし終わると使えません。
116:nobodyさん
12/05/11 21:08:24.13 .net
バルス
117:nobodyさん
12/05/12 23:49:26.94 Ss+1w/F4.net
職場の先輩がジュワンゴって発音するんですけど
どうしたらいいですか?
118:nobodyさん
12/05/13 00:03:13.19 .net
ド素人が今からDjangoを始めるなら1.3と1.4のどちらがオススメですか?
119:nobodyさん
12/05/13 00:27:12.18 .net
わかりません><
120:107
12/05/13 00:33:05.88 .net
レスありがとう
>>108
日本語の情報が少ないのはしょうがないですね。
でも公式サイトの英語のドキュメントは丁寧に書かれている気がする。
>>112
DjangoはMVCのViewの部分が使いやすいってことですか?
Rails遅いってのは聞いたことがあります。
大部分はRubyの原因かもしれないけど。
>>118
俺もDjangoこれからだけど素直に最新の1.4でいいんじゃないの。
覚えてる間に次のバージョンでるでしょうw
121:nobodyさん
12/05/13 04:47:18.09 .net
>>120
Djangoを学習している間にPyramidがメジャーになるのではという不安が。
122:nobodyさん
12/05/13 20:10:42.88 .net
>>112みたいに短絡的な結論出せる人が羨ましい
123:nobodyさん
12/05/13 22:00:06.06 XIq+bFUq.net
djangoで異なる複数のリクエスト間で
(巨大な)オブジェクトをメモリ上に共有する方法ってないですか?
オブジェクトが小さければキャッシュ機能でmemcachedを使う
というのが良さそうですが、非常に大きい(数ギガ)オブジェクトを
共有したいのです
(memcachedだとオブジェクト一つのサイズには上限があるので
無理だと思ってるのですが、そんなことないですか?)
小さなオブジェクトが大量にあるのではなく
一つの巨大なオブジェクトというのが外せない条件になってます。
具体的な上限もなくて、システム上に展開できるサイズなら
何Gでも利用したいとなっています。
やりたいことのイメージは
「データを加工せよ」というリクエストを一回だけ発行して(この処理は遅くてもいい)
それ以降は
「加工したデータをグラフAにして描写」
「加工したデータをグラフBにして描写」
「加工したデータを更に加工」
というリクエストを発行
というものです。
この加工データが巨大なオブジェクトになっていて
複数のリクエストに対して高速に処理するために
メモリ上に共有させておきたいのです
何か上手い方法ないでしょうか?
124:nobodyさん
12/05/13 23:10:09.79 .net
>>123
共有ストレージの考えだとネットワークI/Oがネックになるし排他も面倒だから
加工処理用にバックエンドサーバを設けるのがシンプルかな。
んでキューでなげるようにすれば「データを加工せよ」ってのもフロント自体はすぐ返せるし、
バックエンドのクラスタ化も容易。
あとはフロントでキャッシュさせるなりチューニングしていくかんじ。
125:nobodyさん
12/05/13 23:39:37.00 XIq+bFUq.net
>>124
不勉強で申し訳ないのですが
キューというのはメッセージ・キューイングと呼ばれる機能のことでしょうか?
具体的なイメージがよくわかってないのですが、仮にやりたかったことを
加工リクエスト
APPサーバがDBからデータ取得
取得したデータを加工
加工データを保持(この方法がわからなかった)
結果(加工しましたというメッセージ)をレスポンス
グラフAの描写リクエスト
APPサーバが保持されていた加工データをグラフ化
結果(グラフ)をレスポンス
として書いた場合、124さんの方法はどのような流れになるのでしょうか?
加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
するということですか? またその場合、加工データは異なるリクエスト間で
共有されるのでしょうか?
質問ばかりですみません
126:nobodyさん
12/05/14 09:28:20.64 .net
>>125
> 加工データ自体はAPPサーバとは別に立てたバックエンドサーバに保持
そう。仮に物理サーバはいっしょでも論理的に役割分担させる。
保持はGBオーダなデータ加工だし、mmapにしとけばファイルにも逃がせられる。
> するということですか? またその場合、加工データは異なるリクエスト間で
> 共有されるのでしょうか?
フロントへの加工リクエストに対して同じ対象の描写リクエストがだせるってことは
なんらかの識別子が存在してるはずで、バックエンドでも同様にやればなんとでもできる。
127:nobodyさん
12/05/14 12:26:51.96 .net
>>118
1.4から日付周りが変わってるから後々面倒なことになりたくなかったら1.4がいいよ
あと多対多のインスタンスもjoinするprefetch_related()とかもあって1.4を選ばない理由がない
generic viewがクラスベースになり、日本語サイトを参考に出来ないのがちょっとハマるかもしれないけど
128:nobodyさん
12/05/15 21:42:51.74 .net
mmapじゃね。pythonはよくは知らんけど。
129:nobodyさん
12/05/16 00:11:15.40 .net
>>126
返信遅れました
正直まだ理解できてない部分があるのですが
何とかがんばってみます
(オブジェクトがリクエスト間で共有できるということは
バックエンド用のプロセスが新たに走っている
ことになるのですよね?)
もし「ここを見ればいい」というサイトがあれば
教えていただけるとありがたいです
130:123
12/05/16 00:17:58.30 .net
ここは読んでおきました
URLリンク(d.hatena.ne.jp)
これを見た感じだとデータを保有しておくというよりは
文字通りジョブ(処理)を投げておいてバックエンドで実行させて
処理が終わり次第結果が返ってくるという印象を持ったのですが、
本来はそういう意図だとしても使い方を工夫することでストレージ
のように利用することも出来る、ということでしょうか
131:nobodyさん
12/05/29 23:13:19.69 .net
で、djangoとrailsあなたたちはどっちが良いと思ってるの?
132:nobodyさん
12/05/31 21:16:34.98 .net
どっちもどっちじゃない?
133:nobodyさん
12/06/01 02:05:04.95 .net
URLリンク(code.djangoproject.com)
utf8mb4対応くるだろうか
134:nobodyさん
12/06/17 15:42:24.03 VLPHimKQ.net
eclipseで実行して「It worked!」って表示されるけど、index.htmlが表示されない
なぜ表示されないのでしょうか(htmlファイル等はバグ等なく作成済み)
eclipse 3.7.2
django 1.3.0
135:名無し
12/06/18 10:55:27.84 AXkhynzr.net
今人気の芸能人相性診断♪
楽しめる人気の占い発見しちゃいました。
いくつか質問に答えるだけであなたにピッタリの人がわかっちゃう。
気になったかたはチェックしてみてね。
URLリンク(232bs7.info)
136:nobodyさん
12/06/20 01:26:01.52 .net
>>134
urls.py見直したら?
137:nobodyさん
12/07/07 15:38:34.13 KIWI0EBX.net
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 .net
インスコはrailsよりラクだよなw
な?・・・
139:nobodyさん
12/07/19 20:17:21.87 .net
pip install django
140:nobodyさん
12/07/25 01:35:10.73 .net
djangoって、単純なことでハマることが多い。
例えば、メールアドレスでログインさせたい時とか、
ユーザー登録フォームを複数ページに分割させて
最後にプレビュー表示&メール認証させるとか、
よくあるシステムを構築するのに一苦労する。
141:nobodyさん
12/07/25 01:43:35.48 .net
年月日の入力Widgetも、
年と日は数字だけのSelectなのに、
月の部分だけは「○月」とか表示されるし、
サクっとできて欲しい機能がいまいち不完全。
情報共有したがらないPython使いの気質のせいか?
142:nobodyさん
12/07/25 13:22:49.19 .net
Railsはアホみたいに情報あふれてる、そのくせバージョン違いで使えないのが多くて萎える。
Djangoはその点Railsよりマシなはずなのに、情報自体少ない。
Djangoの情報が溢れれば楽なのにな
143:nobodyさん
12/07/27 16:53:31.64 cxcs/EZn.net
MySQlの設定するときに決まってpasswordが打ち込めなくなるんだけど知ってる?
escで逃げちゃってるからきっとadminサイト入れない。
144:nobodyさん
12/07/28 15:55:26.49 .net
>143
DjangoとSQLのバージョン書こう
つうか、設定ファイルに書けばよくないか
145:nobodyさん
12/08/09 00:46:11.95 CMriqrOl.net
Djangoの勉強を始めたばかりなのですが、わからないことがあり質問させて頂きます。
現在、勉強がてらにユーザ認証を行う掲示板のようなものをつくろうと考えています。
Modelとしましては、Entryクラスがあり、その中に
・書きこみ日時
・タイトル
・本文
・書きこみユーザ
という情報を持たせたいのですが、書きこみユーザはどのようにフィールドを設定すればいいのでしょうか?
まだ勉強中なのですが、認証にはDjangoのauthモジュールを使おうかと考えているのですが、そのauthモジュールの書きこみユーザとの連携方法がわかりません。
よろしくおねがいします。
146:Wob9w
12/08/09 02:00:17.11 .net
投稿テストですよん...( ̄ー ̄)ニヤリ
HOFj4DjMraDFpyM
133941476137733アメフトォ(大嘘) そして面接へ
147:nobodyさん
12/08/24 00:33:32.43 .net
>>145
request.userからユーザーオブジェクト拾って入れる
ForeignKey(django.models.auth.models.User)でいいと思うけど
URLリンク(djangoproject.jp)
148:nobodyさん
12/08/31 05:50:33.79 .net
びっくりするほど過疎ってるね。
django、良いフレームワークなのに
なんでこんなに人少ないんだ?
そんなにPython使いが少ないのか、
そんなにPHPが便利すぎるのか。。
149:nobodyさん
12/08/31 19:16:38.98 vOsjd0I6.net
日本でPython使ってる人なんて300人ぐらいしかいないもの
150:nobodyさん
12/09/03 10:36:41.32 SqdE+p9Q.net
ImageFieldのheight_fieldとwidth_fieldは何をするためのものになるのでしょうか?
URLリンク(docs.nullpobug.com)
このページの説明では何を言っているのかよくわかりませんでした。
151:nobodyさん
12/09/08 09:07:34.56 .net
おひさしブリーフなんだけどまだデファクトなん?
152:nobodyさん
12/09/09 12:55:38.23 So5recQR.net
最近pyramid使い始めた
153:nobodyさん
12/09/10 10:18:25.23 SzEanAFy.net
CakePHPのセッションはUAと結び付けられているようですが、Djangoはそのような機能はありますか?
ブラウザのクッキーファイルが漏れて、セッションIDが奪われた時の対策としてどのようなものがあるか調べております。
154:nobodyさん
12/10/01 09:36:29.13 Yqd8lXeW.net
URLFieldに入れる前に、URLFieldに入る値かどうかを確認したいのですが、そのようなことはできますか?
155:nobodyさん
12/10/01 15:44:59.22 .net
>>148
djangoさんが優秀すぎてグチるネタも無いからじゃないかな?
156:nobodyさん
12/10/02 13:29:26.30 .net
書きこんでも誰も答えてくれないので書き込みません
157:nobodyさん
12/10/07 11:17:06.65 .net
>>149
> 日本でPython使ってる人なんて300人ぐらいしかいないもの
お前ら一人ひとりがこの精鋭たちなんだな……
URLリンク(www.youtube.com)
158:nobodyさん
12/10/22 23:38:00.87 .net
デプロイの定番ってどんな感じなのでしょうか
nginxとgunicornをネットではよく見かける
159:nobodyさん
12/10/25 14:49:20.54 .net
>>158
俺も知りたい。
nginxにしようか無難にapacheのままにしとくか迷ってる。
DBはPostgresが主流なのかな。
160:nobodyさん
12/11/15 09:02:26.77 O5OuIbET.net
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 .net
Dajngoとか3日もあれば使いこなせるだろう
語ることすらないわ
162:nobodyさん
12/11/22 00:15:52.74 .net
じゃあ質問に答えてやれよ
163:nobodyさん
12/11/22 01:17:16.06 .net
>>862
フレームワークは3系に対応するまで覚える気になれません。
web2pyの対応を待ってるんだけど、Djangoはもう対応したのですか?
164:nobodyさん
12/11/22 02:32:21.53 .net
まだリリースされてないけど、1.5で対応するみたいよ URLリンク(docs.djangoproject.com)
165:nobodyさん
12/11/28 13:22:36.30 .net
>160
URLリンク(blog.madoro.org)
166:nobodyさん
12/11/29 14:03:21.70 .net
Djangoで初期にDBに保存しておきたい値はどのように設定すればいいのでしょうか?
167:nobodyさん
12/11/29 19:16:21.88 .net
DBに直接書き込む
168:nobodyさん
12/11/30 08:04:28.86 .net
Djangoには初期値を設定する方法は容易されていないのでしょうか?
そうなると、スクリプトを設置する際に、syncdbしたあとに書きこみスクリプトを実行し、そのあとにスクリプトを動かす必要があるという事でしょうか?
169:nobodyさん
12/11/30 16:25:00.13 .net
問答無用でselect文発行するソースでも書いてるのか?
170:nobodyさん
12/12/01 11:24:52.03 .net
>>166 >>168
逆に質問だけど
あなたが Django 使う前はどういう方法で DB の初期値を作っていましたか?
171:nobodyさん
12/12/01 11:59:08.01 .net
テストサーバーでデバグしたあと本番にデプロイするときに、スキーマはそのままで、
データだけ空(または必要最小限な初期値のみ&もちろんインデックスも最初から)に戻して
うpしてくれる機能があると便利かな、とは思う。
172:nobodyさん
12/12/01 15:45:47.56 .net
本番アップデートするたびに初期化されるのか。
胸熱
173:nobodyさん
12/12/05 05:21:33.65 .net
>>168
fixture かな
174:nobodyさん
12/12/18 07:32:04.58 .net
Djangoをレンタルサーバで使える業者ってありますかね? VPSで運用していると、OSやシステムのメンテナンスコストがかかってしまうため、レンタルサーバのように、メンテナンスは業者が行なってくれるところを探しています。
175:nobodyさん
12/12/19 00:56:44.87 .net
>>174
GoogleAppEngine
176:nobodyさん
12/12/20 08:11:54.79 .net
GAEで新しめのDjangoを使おうとすると、自分でDjango自体のメンテナンスが必要になるかと思います。そういったことも含めメンテナンスをしてくれる業者はありませんか?
納品してしまったら、こちらからはシステム以外のメンテナンスを余りしなくてもいいようにしたいです。
177:nobodyさん
12/12/26 17:54:39.43 .net
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 .net
render_to_response()の第3引数のRequestContextというのが全く意味がわかりません
説明していただけませんか?
179:nobodyさん
12/12/29 03:06:45.67 G1+BbVGH.net
馬鹿には無理
180:nobodyさん
13/01/05 18:01:55.06 .net
アプリ起業 iPhone C#まとめ Ver 1.5
URLリンク(tinyurl.) com/9w97424
181:nobodyさん
13/01/07 12:07:01.80 .net
ModelFormを使ってフォームを作成しています。
UserForm( request.POST, request.FILES) のように、User登録フォームを作成しているのですが、passwordも入力された値を引き継がれるようです。これをパスワードのinputのvalueを空にしたいのですが、formsetの中身を操作するメソッドは用意されていないでしょうか?
182:nobodyさん
13/01/09 01:21:05.79 .net
formsetって書いてるけど、formでいいのかな?
form.is_validがFalseのときのエラー吐いたフォームでpasswordクリアしたいってことなら、
(TrueだったらHttpResponseRedirectを返すのがセオリーっぽいので
UserForm()には引数与えないだろうし)
javascriptのonloadイベントとかでクリアした方が楽かも。
183:nobodyさん
13/01/12 08:19:26.89 .net
どなたかsocial-pluginにmixiの対応をつけてくれませんか。
184:nobodyさん
13/01/18 01:04:30.47 .net
>>177
亀だけど、django/db/__init__.py中で
connections = ConnectionHandler(settings.DATABASES)ってなってるから、
settings.pyのDETABASES定義より下の行じゃないと
ダメなんじゃないかな。
185:nobodyさん
13/01/19 09:59:59.34 .net
fixtureを使ってUserを追加したいのですが、どのように書けばよいのでしょうか?
186:nobodyさん
13/01/23 01:18:22.02 .net
>>185
1~2個User作って、manage.py dumpdataしてフォーマット見てみたら?
187:nobodyさん
13/01/23 13:23:40.95 .net
1.5全然来ないな
188:nobodyさん
13/02/12 20:07:21.93 .net
Southはpython3非対応?
189:房州
13/02/17 18:07:03.35 .net
俺は教えねえよ。俺は坊やの先生じゃないからな。お前もPy人なら自分で気づけ
190:nobodyさん
13/02/22 18:16:32.21 .net
PHP,Ruby(というよりRails)の次にDjangoに目をつけて勉強中だが、チュートリアルがわかりづらすぎて挫折しそう
一つ一つ追っていけばその段階ではわかるけど、仕様そのものが全く頭に入ってこない
191:nobodyさん
13/02/23 13:45:14.87 .net
>>190
他のフレームワークで開発していたら、置き換えるだけで理解できると思うんだが。
たとえばどの変がわかりにくい?
192:nobodyさん
13/03/06 22:36:17.01 .net
>>190
同意
193:nobodyさん
13/03/11 00:25:01.26 .net
>>190
ModelのところだったらModelのドキュメントを読みながら進めたりするとわかりやすいよ
194:nobodyさん
13/03/11 00:26:00.34 .net
django-social-authがPython3使えないみたいなんだがほかにいいライブラリって無い?
OAuth2&Python3で
195:nobodyさん
13/03/22 18:57:26.97 .net
test
196:nobodyさん
13/03/25 19:52:29.13 .net
おもろいけどすぐ飽きる
URLリンク(portal.nifty.com)
197:nobodyさん
13/04/04 12:10:00.96 .net
>>190
いまいち体系化されてないんだよな。
middlewareやらsignalやらclass-based viewやら、
ちょっと奥まったところにいくとソースみるしかなくなる。
でもdjango自体はまだずっとマシで
そのオープンソースアプリになると全くドキュメントなかったりするから。
pythonのこういうところが普及しない原因なんだろうな。
198:nobodyさん
13/04/04 16:51:07.95 mlSWjspl.net
>>197
はげど(死語)
199:nobodyさん
13/04/04 17:49:08.54 .net
馬鹿には無理
200:nobodyさん
13/04/04 22:21:11.84 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
201:nobodyさん
13/04/05 00:29:47.17 .net
>>200
文字列はcallableじゃないからとしか言いようが。。
202:nobodyさん
13/04/05 09:17:53.64 .net
DjangoってO/R Mapperをすきなものに
簡単に入れ替えて使えるようになってますか?
203:nobodyさん
13/04/05 11:25:49.80 F/TEgITk.net
>>201
URLリンク(kay-docs.shehas.net)
204:nobodyさん
13/04/09 13:48:17.20 .net
>>202
できないし、やる意味もない。
205:nobodyさん
13/04/10 14:16:59.81 .net
>>202
できるけど、それならDjangoを使う意味がない
206:nobodyさん
13/04/10 15:54:55.53 .net
>>204-205
ありがとう
O/R mapperやテンプレートエンジンは何種類かから選べたり、
自由に入れ替えたりできるフレームワークもあるので、Djangoも
そうなってると思ったのですが、残念
207:nobodyさん
13/04/14 20:18:57.11 .net
iPhoneアプリ. Windowsアプリを売って生き残れ Ver 1.7 リンク数61
Http://qr. net/kh4y
208:nobodyさん
13/04/18 22:35:21.76 .net
django製の業務パッケージってなにか実例ないですか?
209:nobodyさん
13/05/01 12:26:59.19 .net
djangoアプリって日本好みなのは少ないね。
フレームワークとしては良いんだけどなぁ。
210:nobodyさん
13/05/01 23:56:23.92 .net
Webサイトは沢山つくったけど業務アプリ/パッケージはないな
そもそもWebサイトに比べてそんなに引き合いもないし
211:nobodyさん
13/05/09 22:27:24.07 .net
django1.3をscalaにポーティングしようかしら?
212:nobodyさん
13/05/10 17:37:23.92 .net
>>211
Scalaは人気ないし、JavaかC#に移植してほしい。
213:nobodyさん
13/08/02 NY:AN:NY.AN .net
djangoを導入して、codezineのチュートリアルが終わりました。
データベースにMySQLを使っているのですが、テーブルの文字セットがlatin1_swedish_ciになっているせいなのか、
日本語のテキストを投入できないのですが、モデルの定義で症状順序を指定する方法はないのでしょうか?
214:nobodyさん
13/08/14 NY:AN:NY.AN .net
オブジェクトにプロパティを追加した状態でシリアライズを行いたいのですがどのようにすればいいでしょうか?
django.core.serializers.serializeでシリアライズを行うと、オブジェクトに行った変更が維持されずにシリアライズされてしまいます。
215:nobodyさん
13/09/18 12:08:44.39 gKUd666P.net
>>213
UTF8で作り直し
>>214
えっ
216:nobodyさん
13/09/23 17:58:49.68 .net
>>214
pickle.dump は?とか言ってみるテスト
217:nobodyさん
13/09/24 18:51:53.67 qDsFnzSc.net
くっそー、すごく使いやすいし良いフレームワークだと思うのに、デプロイがうまくいかなくて腹立つ…
Djangoの問題じゃなくて、Apacheをうまくいじれない俺の問題なんだ…(;´д`)
218:nobodyさん
13/09/24 18:56:41.79 .net
途中でテーブルの列が変わったときと既存のテーブルとどうやって連携させるのかよくわからない
219:nobodyさん
13/09/24 19:48:22.31 .net
apatch捨ててnginx+uwsgiで行こう
220:nobodyさん
13/09/24 21:31:45.65 .net
>>219
俺もその構成だな
なにより軽い
221:nobodyさん
13/09/24 23:56:34.50 .net
>>217だけど
おk、nginxとuwsgiで行ってみる。
222:nobodyさん
13/09/28 21:38:29.53 .net
>>221だけど
うまくいったわ
ありがとう!
223:nobodyさん
13/09/29 13:33:41.13 .net
Python3用のチュートリアルはどこかにないでしょうか?
224:nobodyさん
13/09/29 19:09:36.11 .net
Django1.5の時点ではPython3って実験的サポートじゃなかったっけ
225:nobodyさん
13/09/29 19:51:23.06 .net
そうなんすか?
でもいまさらPython2系というのも後ろ向きな気がしますし…
226:nobodyさん
13/09/30 02:52:14.59 .net
Python2と3の違いなんて微々たるもんじゃん
227:nobodyさん
13/09/30 11:04:14.98 4crUfdOT.net
まぁ1.4のドキュメント見ながら、1.5をいじっていけば良いと思うよ。日本語がいいならね。
Python2と3の違いは自分で何とかするなり、わからなかったらここで聞くなり。
228:nobodyさん
13/10/05 21:53:42.87 rLQ0vSt3.net
social authがうまく動かなくてぐぬぬってなっとる
229:nobodyさん
13/10/07 22:48:06.70 .net
Django Social Auth、Django1.4だと
<a href="{% url socialauth_begin 'twitter' %}">ログイン</a>
で動くけど、1.5なら
<p><a href="{% url 'socialauth_begin' 'twitter' %}">ログイン</a></p>
じゃないと動かないのね…。
230:nobodyさん
13/10/10 08:22:16.60 .net
<p>タグなしだと動かんって、こりゃハマるわw
231:nobodyさん
13/10/10 13:43:57.07 .net
え?
232:nobodyさん
13/10/12 10:14:16.07 katzcLBA.net
ごめん、pタグの有無が問題なんじゃなくて、 url って文字列をクォーテーションで囲むかどうかが問題なんだ。ごめん。
233:nobodyさん
13/10/12 10:15:05.96 katzcLBA.net
urlじゃねぇや、socialauth_beginって文字列な。
234:nobodyさん
13/10/22 17:34:54.08 .net
いままでPHPのWebフレームワークしか使ったことないけどrailsは以外に簡単だった
Djangoは難しすぎる
まず、コントローラとViewとルーティングの3つすら全然わからない
235:nobodyさん
13/10/22 20:21:30.74 .net
それはいくらなんでもレベル低すぎないか・・・
236:nobodyさん
13/10/25 13:21:28.78 upIsqz91.net
とりあえずわかんなくても、1.4のドキュメントのチュートリアルを一通りやればいいと思う。
で、それをもとに改変していけばそのうち慣れるんじゃない?
237:nobodyさん
13/10/26 18:58:50.65 .net
djangoで一からアプリ作るのは意外とわかりやすい。
でもアプリをいろいろ組み合わせようとすると大変なことになる。
djangoのバージョンも迂闊にあげられないし。
ショッピングサイトをsachimoベースで作ってるが、
一から自分で書いた方が早いんじゃないかと思えてきた。
238:nobodyさん
13/10/26 19:05:11.06 .net
>>237
DjangoはRailsにならって、レールに沿ったやり方で開発する前提でしょ。どんなフレームワークでもそうだけど、特に。
レールから外れるなら、フレームワークよりライブラリ組み合わせるのが普通だと思う。
239:nobodyさん
13/10/26 20:16:45.45 .net
>>237
それはDjangoというよりSatchmoの問題じゃなかろうか
他人の作ったAppを利用するのは思ったより面倒だからなぁ
240:234
13/10/27 11:53:23.07 .net
マニュアルのみてもわかんない
これMVCじゃないよね
241:nobodyさん
13/10/27 13:56:07.27 .net
MTV a.k.a MVC
242:nobodyさん
13/10/27 15:11:56.59 .net
>>240
マニュアルにViewがControllerだって書いてなかったっけ。
243:nobodyさん
13/11/01 19:41:43.32 .net
>>240
馬鹿には無理
244:nobodyさん
13/11/10 13:18:25.05 .net
RailsやCakeを経て最近使い出したけどDjangoのORMって素敵だな
データベースありきじゃなくてちゃんとモデルが主役というか
今までDBの奴隷だったのが解放された感じ
245:nobodyさん
13/11/12 02:25:04.60 W3f6KAuy.net
Django1.6ですよみなさん
246:nobodyさん
13/11/12 05:46:48.93 .net
>>245
settings.pyがシンプルすぎて目を疑った
でもuwsgiで動かそうとすると jingo ちゃんのせいでえらーになる
247:nobodyさん
13/11/12 15:28:40.85 .net
いつになったら1.4の翻訳は終了しますか?遅くないですか?
248:nobodyさん
13/11/12 15:32:11.85 .net
URLリンク(docs.djangoproject.com)
このぐらいの量なら1日1見出し分のゆっくり翻訳でも一ヶ月で終わりますよ
コミュニティがあまり活発ではないのでしょうか?
249:nobodyさん
13/11/12 17:20:28.66 .net
1.0からとか使ってる人は、大きな変更点さえ日本語であれば、後は英語でも困らないんじゃないか。
困ってるなら、あなたがやってもいいのよ。
250:nobodyさん
13/11/12 21:08:41.51 .net
別のフレームワークの日本語訳で忙しいから俺はやらないよw
251:nobodyさん
13/11/13 01:25:01.46 .net
なぜ英語も読めないのか?まずはそこを反省すべきではなかろうか
252:nobodyさん
13/12/06 20:28:11.08 VQsT5HYM.net
Python3どうでしょう
253:nobodyさん
13/12/07 04:58:47.30 .net
とりあえず問題なくつかえてる
254:sage
13/12/07 17:27:24.49 gAFb5wMQ.net
>>250
どのフレームワーク?証拠見せろよw
255:nobodyさん
13/12/13 12:15:36.58 .net
1.6でPython3対応したことを知って学び始めてるんですが、
URLリンク(docs.djangoproject.com)
のA full exampleのuser = self.model(…)の意味がわかりません
BaseUserManagerの中にmodelっていうメゾッドがあるんですか?
256:nobodyさん
13/12/13 13:31:51.00 .net
BaseUserManagerが継承しているManagerの中にmodelが定義されている
ドキュメント読んで疑問点が出たら django のソースを見るのが一番
たしかにそのあたりはちょっとややこしいけど・・・
257:nobodyさん
13/12/13 14:56:46.43 .net
ありがとうございます
こんなに早く回答がもらえるとは思ってなかった
258:nobodyさん
13/12/19 13:42:20.81 .net
1.5でカスタムユーザ追加されたらしいですけどその前はどうしてたんです?
259:nobodyさん
13/12/19 15:10:00.19 .net
>>258
profile使ってた。
260:nobodyさん
13/12/19 15:41:05.68 .net
カスタムユーザが便利すぎてもうprofileには戻れない
261:nobodyさん
14/01/18 18:04:24.93 .net
開発中にview内でprintで変数の中身を確認してるのですが本番環境でprintを消し忘れると
[Errno 5] Input/output error
で落ちてしまいます
これを回避する方法は無いのでしょうか?
262:nobodyさん
14/01/19 01:49:06.58 .net
logging使おう
263:nobodyさん
14/01/21 05:07:03.69 .net
それはloggingを使って変数の中身を出力して確認するという事なのでしょうか
それともprintが出力するはずだった情報をloggingが受け取る?ことでエラーが発生しないというなんでしょうか
あと、もし500を返すような致命的エラーが出たらメールで管理者に送る機能しか無くて、ファイルにlogとして残せないですよね?
メール送るところを自分で改変してログに残せそうな気もするんですがちょっと敷居が高過ぎます
URLリンク(www.18th-technote.com)
今は上記を参考にviewで発生したエラーはprocess_exceptionで補足できてるんですが、
templateでもしエラーが起きたら補足できません
これデフォルトでなぜ付けないんだろうといつも疑問に思ってます
264:nobodyさん
14/01/21 09:23:00.68 .net
>>263
uWSGI だとまず >>261 の状況が発生しないのだけど
使ってる環境(サーバ)はなあに?
ちなみに、printで標準出力に出したものは uWSGIのログにも出力されるよ
265:nobodyさん
14/01/22 21:52:13.79 .net
>>264
gunicornです
gunicornでログを生成するようにしたらprintの内容が出力されてエラーが出なくなりました!
Django本体のログのことしか頭に無かったです
ヒントありがとうございます 大変助かりました
266:nobodyさん
14/01/25 07:08:02.10 HM5WIj95.net
このスレでuWSGIを初めて知ったのですが良さげなんでしょうか
Djangoと言えばnginx+gunicornの組み合わせしか知らないんですが最近気になってます
267:nobodyさん
14/01/28 23:39:54.41 .net
同じくこのスレでuWSGIを知ったのですが、uWSGI+nginxにするとapacheに比べて
どの辺が嬉しいんでしょう?
268:nobodyさん
14/01/29 17:12:34.45 .net
Appach
潤沢なメモリがあるサーバならApacheでも良い
枯れているし対応する拡張も多い
でも兎に角メモリイータでリソースに厳しい
uWSGI
馬鹿っ速い・先進的な機能がテンコ盛り・省リソースで動く
269:nobodyさん
14/02/07 23:56:26.65 NNxPDh1r.net
railsだのDjangoだのいじってる人はApache使わない印象
270:nobodyさん
14/02/13 04:25:53.66 .net
pyodbc.connect("DSN=hoge")
を含む関数を
manage.py shellから呼んでも通るんですが、
本番環境だとApacheがsegmentation fault(11)を吐きます
上記関数を含まない他のviewは問題なく表示できます。
どこらへん調べたらいいですか?
Apacheでmod_wsgiをdaemonモードで使っててDjango1.6です
271:nobodyさん
14/02/23 22:30:46.68 .net
ここえらい過疎だな・・・
RoRに比べて日本語の情報も少ないし、Django弄ってる日本人少ない?
RoRに浮気したいけど、初心者に厳しいとも聞くし
272:nobodyさん
14/02/24 03:31:27.40 .net
>>271
問題ないから話題がないとも。
閉鎖的な日本ではログインシステムが標準てのはいいかもね。
273:nobodyさん
14/02/24 12:07:32.49 .net
Web用にPython選ぶメリットって今は殆ど無いからね
274:nobodyさん
14/02/24 14:39:31.70 Grf2Q2cg.net
Pythonは初心者がマルチバイト文字で詰まって投げ出してるイメージ
英語圏は楽でいいよな
275:nobodyさん
14/02/24 20:18:43.30 .net
あるわ
276:nobodyさん
14/02/24 21:38:54.89 .net
今日からDjango始めてみたんだけど、Viewの部分が面倒くさくない?
277:nobodyさん
14/02/25 02:26:27.38 .net
>>276
何と比べてるのかわからないが、標準View使えば。
278:nobodyさん
14/02/25 06:29:04.41 .net
面倒くさいと感じたことはないな
そもそもDjangoに限らずViewの部分なんて難しい処理とかないじゃん
279:nobodyさん
14/02/25 16:06:21.05 .net
Pythonで変数が設定されているか調べるにはどのようにすればいいですか?
PHPでいう、if(isset($var)){}のような事をしたいのですが
280:nobodyさん
14/02/25 16:10:25.31 .net
ごめんなさい、スレを間違えました
281:nobodyさん
14/02/25 16:37:36.90 .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()だけでいけるように設定できれば楽なんだけど
282:nobodyさん
14/02/25 21:06:50.68 .net
Djangoの設計概念の理解不足だと思う
とは言えドキュメントにこのあたりは纏まって書いてないので
ひと通りやらないと分からないのはちょっと不親切だったりする
まず"Djangoアプリ 再利用" とかでググってみておくれ
urls.pyにまとめてurlを書く利点はページのURL配置に自由度を持たせる為
viewの指定については、django.shortcuts.render でも使えばいい
それか同じように毎回書くのが面倒ならそのラッパを好きに自分で作る。
テンプレートの場所も設定で変更できる。
開発時の問題ならシンボリックリンクでも貼っておけば良い。
283:nobodyさん
14/02/25 21:56:01.64 .net
なるほど、ちょっと調べてみるね
それともう一つ質問あるんだけど、
例えばHTMLのフォーム(form.html)からanalyze.pyへ移動し、
そこでフォームのバリデーションなんかしたりしてから別のHTMLページに飛ばしたい場合は、
<form action="./analyze.py">でどのように指定すればいいの?
例えテンプレートform.htmlがanalyze.pyと同じディレクトリにあっても相対パスが適用されないよね?
CSSやJSの外部ファイルの読み込みの際にワケが分からなくてハマったんだけど
コレは/static/ディレクトリを作成し、その中に入れてなんとかなった
Djangoではマニュアルとか読んでてもModelがDBからみの事をいうような書かれ方してるけど、
自分は外部ライブラリなどもModelだと認識してる
analyze.pyのような関数やクラス群はどこに置いて、どのように指定すればいいの?
284:nobodyさん
14/02/25 22:34:11.12 .net
PHPはファイルの場所と名前からURL情報が作られる。
まずこれを綺麗サッパリ忘れてくれ。
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だと認識してる
違う
285:nobodyさん
14/02/25 23:39:29.25 .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ファイルをディスパッチ、レンダリングするというなら、その方法が見当も付かないんだけど...
混乱してるなぁ...うぅむ...
286:nobodyさん
14/02/26 00:25:11.85 .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 にまかせてしまう
287:nobodyさん
14/02/26 00:48:09.44 .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スクリプトを書いていくということになるんだね?
なるほど
288:nobodyさん
14/02/26 07:45:04.05 .net
質問者はMVCが理解できていない
289:nobodyさん
14/02/26 08:06:17.61 .net
URLリンク(docs.djangoproject.jp)
URLリンク(d.hatena.ne.jp)
まずこのあたりに目を通してはどうだろうか
290:nobodyさん
14/02/26 21:53:50.81 .net
Two scoop of django 1.6のkindle版マダー?
291:nobodyさん
14/02/26 22:48:12.48 LOhj6Qup.net
例えば日毎に複数モデルからデータを持ってきて表示するカレンダーを作る場合、
Manager:date等を指定してのクエリ(戻り:QuerySetや集約後のデータ)
View:Calendar.monthdatescalendarのような構造の配列を作る
それぞれのモデルのManagerを呼んでデータ取得
配列にはモデルから取得したデータをまとめた辞書を入れる
Template:forループで上の配列を回してhtmlにする
こんな感じで合ってますか?
不安な点:
・クエリを書く場所(View?Manager?)
・View内でコードを書く場所
今はgetメソッドに直接書いていますが、getは弄らずにメソッドに書いてそれをテンプレートから
呼んだ方が(view.hoge的な)いいのでしょうか?それとも別ファイルに関数を書くべきですか?
・現在はデータをループしやすいような配列にしてから渡してますが、Template内である程度HTMLにした方がいいのか?
※formは軽くタグとか付けられますよね
ネットでサンプルを探してはみたのですが、今一これが正解!的なコードが見つからなくて・・・
あと設計の参考になりそうな良いサイトってありますでしょうか?
292:nobodyさん
14/02/26 22:50:32.75 .net
>・現在はデータをループしやすいような配列にしてから渡してますが、Template内である程度HTMLにした方がいいのか?
Template内で → View内で
でした
293:nobodyさん
14/02/27 01:08:04.43 .net
単純なデータ取得、たとえば pkを指定してレコード取得や一覧取得はView
ビジネスロジックと言われるような中枢を成す処理はmodelまたはlogics.pyとか別ファイルにする
Djangoのポリシーではテンプレート内でデータは加工しない
テンプレートはデザイナーが触るものでプログラマーが触るものではない
よってデータの加工はviewでやる
getメソッド?なにそれ
294:nobodyさん
14/02/27 05:14:32.62 .net
>>291
俺ならインタフェースだけ合わせて、template内で同じように見えるようにしてiteration。
295:nobodyさん
14/02/27 06:00:14.57 .net
<select><option value="foo">bar</option></select>
のような形を作るにはどのようにすればいいのでしょうか?
class yes(forms.Form):
bar = forms.ChoiceField(
widget = forms.Select()
)
で、セレクトバーは出たんですが、その後の<option>の指定方法がわかりません
自分はHTMLで{{form.bar}}のようにしています
296:nobodyさん
14/02/27 06:01:32.60 .net
すみません、barじゃなくfooでした
297:nobodyさん
14/02/27 10:04:22.81 .net
>>296
choices
298:nobodyさん
14/02/27 17:19:30.62 .net
フォームでPOST値を送信する場合って、
PHPの場合は、送った先が$_POST['foo']とかを処理するけど、
Djangoの場合は、処理するページ(<form>のあるページ)がPOST値を処理してから次のページへリダイレクトって仕組みだよね?
送った先(次のページ)がPOST値を取得したり表示する場合はセッションを使わないといけないんだよね?
299:nobodyさん
14/02/27 20:08:10.07 .net
>>298
そんなことない。作り方次第。
ただ自然に作ると、
300:nobodyさん
14/02/27 20:09:28.52 .net
>>299 続き
そうなる。
301:nobodyさん
14/03/01 00:04:24.54 .net
>>292
getはクラスベース汎用ビューにあるgetのオーバーライドです
ネットの参考サイトがそのような書き方をしていましたので
requestからURLパラメータ欲しいから・・・と思いましたがView.requestでどこからでも取得出来るんですね
となるとコンテキストに追加するのはget_context_dataがいいのかな
あとテーブル操作はカスタムManager、レコード操作はModelと意識してます
>>294
フォームで言う、form.messageみたいなのを作るって事でしょうか?
ネットでもいろんなやり方があって、もう設計に拘らず適当でもいい気がしてきました・・・w
しかし関数ベースとクラスベースの情報があってぐぐり難いですね
302:nobodyさん
14/03/01 02:11:13.60 .net
>>301
>>294だが違う。
モデルで吸収するってこと。
303:nobodyさん
14/03/02 09:36:50.36 .net
>>1
オブジェクト指向は愚かな考え。排便メソッドを実装した人間クラスから美少女クラスが作れない。
スレリンク(tech板:85番)
304:nobodyさん
14/04/08 07:57:45.66 Gp3QMMMl.net
request.session['hoge'] = 0
sqlite使用で上のコードを書いただけで 200msくらいブラウザの反応が遅くなるから、
なんとなくmysqlに変えてみたらなぜか早くなりました(300ms→100ms)
※他にも簡単なSQLありますが、上のコードが無い場合は両者反応速度一緒ぐらいです
しかしdebug_toolbarで見るSQLの実行時間は常に変わらず0or1ms
あとtime.clockでもコードの実行時間見てるけど、なんか変です
上のコードがあるメソッドを、clockで囲ってコード有無・DB変更して計測しても、常に30ms未満
なぜでしょうか・・・orz
django1.6.2 python2.7 windows7
305:nobodyさん
14/04/08 19:30:15.43 .net
計測何回やったんだ
sqliteはファイルだからIOがとかなんとか
mysqlもファイルですよ
306:nobodyさん
14/04/08 23:51:56.94 .net
>>305
ついでにtimeitとやらで計測してみました
t = timeit.Timer("""s = SessionStore('key')
s.save()""", 'from django.contrib.sessions.backends.db import SessionStore')
logging.debug(t.timeit(10))
[ sqlite3.8.3.1 ] 約2800ms VACUUMすると遅くなって3800ms・・・
QUERY = u'SELECT "django_session"."session_key", "django_session"."session_data", "django_session"."expire_date"
FROM "django_session" WHERE ("django_session"."session_key" = %s AND "django_session"."expire_date" > %s )' -
PARAMS = (u"'z9q43506rahjmcheld9e0m9p4motsbwa'", u"'2014-04-08 13:53:36.183000'")
QUERY = u'BEGIN' - PARAMS = ()
QUERY = u'UPDATE "django_session" SET "session_data" = %s, "expire_date" = %s
WHERE "django_session"."session_key" = %s ' - PARAMS = (u"'NDFkMjdiMjI5NWUzYjliZWIzNGQwMGI1YzA1ZDcwMWQ5MjNmZWVlNDp7fQ=='",
u"'2014-04-22 13:53:36.190000'", u"'z9q43506rahjmcheld9e0m9p4motsbwa'")
UPDATEはdebug_toolbar上では1or2ms。トランザクションの関係で計測上手く出来ないのかも?
UPDATEをSQLiteManagerから直接実行しても300msかかってました
[ mysql5.6.17 ] 約140ms
SELECT ??? FROM `django_session` WHERE (`django_session`.`session_key` = 'z9q43506rahjmcheld9e0m9p4motsbwa'
AND `django_session`.`expire_date` > '2014-04-08 13:59:03' )
UPDATE `django_session` SET `session_data` = 'NDFkMjdiMjI5NWUzYjliZWIzNGQwMGI1YzA1ZDcwMWQ5MjNmZWVlNDp7fQ==',
`expire_date` = '2014-04-22 13:59:03' WHERE `django_session`.`session_key` = 'z9q43506rahjmcheld9e0m9p4motsbwa'
しかしsqliteのアダプタって無駄が多いんですね
さすがに差が開きすぎな気もするので、単に私の環境のsqliteがおかしいのかも・・・
307:306
14/04/09 06:33:27.18 .net
すみません、どうやら単純にデータがSSDにあるかどうかの問題でした…
sqliteファイルをSSDへ移したところ、2800ms→230msまで縮まりました
しかしHDDとSSDでここまで違うとは…
308:nobodyさん
14/05/24 02:57:47.14 .net
nginxで使う場合uwsgiとgunicornでは、どちらがオススメでしょうか?
309:nobodyさん
14/05/24 03:17:53.06 .net
そんな質問してるようじゃおまえにはまだはやい
310:nobodyさん
14/05/24 12:31:13.12 .net
uWSGIの方が色々出来て便利だけどドキュメント読めないと詰むかもわからん。
Emperor + Zerg で Graceful reload とか。
311:nobodyさん
14/05/24 13:50:56.96 .net
バカげた質問である
312:nobodyさん
14/05/24 14:09:01.28 .net
Djangoに入ってるsimplejsonってUNICODEを期待してるの?
313:nobodyさん
14/05/26 00:49:39.85 .net
>>312
は?
314:nobodyさん
14/07/02 22:36:04.75 .net
どなたかいらっしゃたらちょっと助けて下さい。
DjangoのViewのとある関数で、別の関数の中で使った変数を使うことはできますか?
下の例なら、関数Aの中で関数BのgetHAMという変数を使いたいです。
315:nobodyさん
14/07/02 22:38:02.95 .net
(例)
def A(request):
fee = int(getHAM) + 1
return fee
def B(request):
getHAM = str(1+1)
316:nobodyさん
14/07/02 23:15:22.78 .net
そんな設計絶対に許さないけど、どうしてもというならセッション使おう
317:nobodyさん
14/07/02 23:17:36.14 .net
やっぱり許せん
ステートレスって言葉を勉強してこい
318:nobodyさん
14/07/03 00:19:06.33 .net
315です。
request.session['getHAM']みたいな感じで解決できたようです。
どうもありがとうございました。
ステートレスの意味が調べました。
ですが私はOAuth1を使ったTwitterアプリを作ろうとしていて、
views.pyのTwitterへリダイレクトする関数とTwitterからのcallbackを受ける関数はどうしても違うものになるかと思います。
プログラミング自体が初心者でして、不快にさせていたら申し訳ないです。
319:nobodyさん
14/07/03 01:28:08.19 .net
>>318
ごめん調子に乗っただけ
oauth か。oauth みたいにステート保持する必要あるならセッション使う
320:nobodyさん
14/07/20 11:11:20.67 .net
プロジェクトとアプリケーションがいまいちわかりません
djangoではプロジェクトの下に異なるアプリケーションを作成する前提なんですか?
2ch掲示板のクローンを作りたいならmanage.py startapp bbs2chclone
rssリーダーを作りたいならmanage.py startapp rssreader
って1つのプロジェクトの中に作っていくスタイルがdjangoですか?
PHPのMVCから流れてきたのでこのへんがよくわかりません
321:nobodyさん
14/07/20 11:42:27.87 .net
startappでviews.pyも一緒に作られないのは何故ですか?
322:nobodyさん
14/07/20 17:59:28.79 .net
作られるよ
323:nobodyさん
14/07/20 18:43:16.39 .net
1.6と1.7では作られませんよ
バージョンいくつの話ですか?
324:nobodyさん
14/07/20 19:37:29.49 .net
>>320
二つ目のアプリを別プロジェクトで作ってもいいけど、運用で一緒に動かせるように。
標準で入っているアプリも使っているだろ。
アプリ単体で作ってもいいけど、すぐ動かせるようにプロジェクトをジェネレートしているんだと思う。
325:nobodyさん
14/09/20 09:55:41.08 .net
配布目的ならやっぱりプロジェクトはわけたほうがいいですよね
326:nobodyさん
14/09/22 18:49:56.60 .net
旧態依然とした社内で布教したく、業務システムのプロトタイプを作ってみました。
そこに入れるデータがExcelにしかないのですが、これをインポートするのにxlrdライブラリでExcelを読みつつ、django用に書いたmodelクラスのインスタンスを生成してはsave()を走らせるコードをちまちまと走らせています。
これでも要件は満たすのですが、皆さんだったらどうしますか?
327:nobodyさん
14/09/25 18:09:06.55 aYh5A6Fe.net
Djangoでおすすめのプラグイン教えて
自分はdjango-debug-toolbarとpaginationくらいしか使ってないけど
328:nobodyさん
14/09/25 21:23:37.04 .net
>>327
paginationとかライブラリとしてしか使ってなかったわ。
329:nobodyさん
14/09/26 03:12:29.74 uLtl5abZ.net
フォームでアルファベットのみとかしたい場合どうすればいい?
cleared_data[].isalpha()とかしたら、アルファベット以外でもすり抜けてしまうんだけど
330:nobodyさん
14/09/26 07:54:29.85 .net
クライアントサイドとサーバサイドでバリデーションかけろよ
331:nobodyさん
14/09/26 08:33:46.96 .net
>>329
cleaned_data見ろよ。
332:nobodyさん
14/09/26 09:36:46.32 uLtl5abZ.net
>>330
は?
サーバサイドでは上記のように試したんだけど出来なかった
内部で変換されて出力時にまた変換されてるのかな、と
どういう風にチェックしたらいい?
DjangoはガチガチのFWだから、PHPみたいにprintやvar_dumpしても出てこないから分かりにくい
>>331
ごめん、cleared_dataじゃなく、cleaned_dataの書き間違いだった
どうやって見るん?
pdbとか?
自分はdjango-pdb見たが分からんかった
333:nobodyさん
14/09/26 13:01:27.56 .net
【IT】「bash」シェルに重大な脆弱性、開発元がパッチ公開 [14/09/25]
スレリンク(newsplus板)
多くのUNIXおよびLinuxのユーザーに利用されている「Bourne Again SHell(Bash)」に重大な
セキュリティホールが発見された。このセキュリティホールはBashによる環境変数の評価方法に起因している。
ハッカーは特別に作成した変数を用いてセキュリティホールを突き、シェルコマンドを実行できる。これにより
サーバはさらなる本格的な攻撃に対して脆弱な状態となる。
(略)
このセキュリティホールを抜本的に解決するには、脆弱性のあるBashを新しい安全なバージョンに置換する
必要がある。米国時間9月24日朝の時点で、Bashの開発元からすべての現行バージョンをアップデートする
パッチがリリースされている。また、DebianとRed Hatはパッケージ化されたパッチを公開している。
ディストリビューターからのパッチを待たず、アプリケーションに対する危険な入力を排除したり、シェルを
呼び出す古いCGIスクリプトを無効化して新しいスクリプトに置換したり、Bash自体を別のシェルに
置換するなどの回避策を実施することも重要だ。
334:nobodyさん
14/09/26 16:46:16.19 .net
>>332
シェルで見る。
ブラウザでしか操作できないならログ。
それもわからないならraiseしちゃうとか。
335:nobodyさん
14/10/02 20:04:40.32 MmprTnHx.net
models使ったスクリプトで、データベースに問い合わせて得た結果セットをJSON化したいんですが、
...is not JSON seralizableとなります
どう処理すればいいですか?
ちなみに、
>>>foo = bar.objects.all()
>>>print type(foo)
<class 'django.db.models.query.ValuesQuerySet'>
>>>print json.dumps(foo)
で上記のエラーが出ます
336:nobodyさん
14/10/02 21:12:21.95 .net
QuerySetオブジェクトはそのままでは渡せない
dictionaryじゃないと
URLリンク(stackoverflow.com)
337:nobodyさん
14/10/03 08:34:38.15 L6uW93jV.net
>>>a = ['ringo','リンゴ']
>>>print a
[{'ringo':'\xe3\x82'}]とか\u73feとかで表示されますが、これを日本語でちゃんと、'りんご'と表示させるにはどうすればいいですか?
また、階層が深いと[<ringo: ringo object>]のようになったりもしますがこれの対処法も教えてもらえないでしょうか?
338:nobodyさん
14/10/03 08:44:06.28 .net
>>337
870 デフォルトの名無しさん sage 2014/10/02(木) 11:43:57.63 ID:9jKc/G7B
CUI環境で
>>>a = ['ringo','リンゴ']
>>>print a
[{'ringo':'\xe3\x82'}]とか\u73feとかで表示されますが、これを日本語でちゃんと、'りんご'と表示させるにはどうすればいいですか?
また、階層が深いと[<ringo: ringo object>]のようになったりもしますがこれの対処法も教えてもらえないでしょうか?
PHPのvar_dump()みたいにオブジェクト内でもデータを確認したいのですが
339:nobodyさん
14/10/03 09:28:45.23 .net
django関係なくね?
まずは python2 か python3 かはっきりしろ
ringo クラスに __repr__ メソッドを追加しろ
340:nobodyさん
14/10/03 10:04:20.76 .net
>>339
関係ないと言いつつ的確に答えてて濡れた
341:nobodyさん
14/10/04 09:46:27.47 .net
Djangoってさ、フォームのセキュリティに関して自分たちは何も対策することない?
基本的にO/Rマッパー使ったり、Formsクラスや{{ csrf_token }}使ってる限り
セッションハイジャックに関しては分かんないけど
342:nobodyさん
14/10/04 10:28:41.48 .net
任せとけばいいよ
テストみてみ
すごいから
343:nobodyさん
14/10/04 10:30:15.26 .net
悪いんだけど、そのテスト結果ってどこに書かれてる?
344:nobodyさん
14/10/04 11:44:46.26 .net
django のテストコード見てみろ
結果は実行してみろよ
345:nobodyさん
14/10/04 11:57:21.96 .net
ポストされたデータの妥当性テスト
URLリンク(github.com)
URLリンク(github.com)
他心配ならテスト読んでみるといい
URLリンク(github.com)
他のフレームワークと違ってdjangoはmozillaがCVEとかあげてくれてる
URLリンク(www.cvedetails.com)
ここ上がってるバグを他のフォームライブラリーで試してみるといいよ
346:nobodyさん
14/10/04 12:54:37.96 .net
なるほど、ありがと
安心して使うことにする
347:nobodyさん
14/10/04 18:50:26.74 .net
ジャンゴ、ジャンゴ
348:nobodyさん
14/10/04 18:53:08.32 .net
DjangoとcakePHPってどっちが良い?
サーバ公開ならApatcheと簡単に連携できてメンテも簡単なcakePHPかなと思うけど
349:nobodyさん
14/10/05 01:06:59.58 .net
>>348
開発は圧倒的にdjangoかな。
350:nobodyさん
14/10/05 23:02:12.14 5shIACe9.net
Djangoってさ、views.pyもだけど、特にforms.pyがとんでもなく長くなってしまうと思うけどどう対処してる?
フォーム登録のあるページを5ページでも作ろうものならその度にclass作って一気に長くなって管理が面倒くさいんだけど
351:nobodyさん
14/10/06 00:23:20.78 .net
views.py が大きくなる時は、
views/__init__py
views/foo.py
views/bar.py
みたいにファイル分割して __init__.py からインポートするようにしてるよ。
352:nobodyさん
14/10/06 01:23:11.52 .net
__init__ で * 展開する奴らを見ると殺したくなる
353:nobodyさん
14/10/06 01:24:20.75 .net
'views.foo' でいいだろ
354:nobodyさん
14/10/06 01:26:27.04 .net
は???
355:nobodyさん
14/10/06 01:42:28.00 .net
>>350
modelForm使ってるので書くことほとんどない。
あと、対応するmodelのファイルに一緒に入れてる。
models.pyは使ってない。1model1ファイル。
modelが中心だと考えている。
356:nobodyさん
14/10/06 09:45:14.28 .net
forms.IntegerFieldにmax_length入れたら怒られたんだけど、自分はセキュリティ観点上フォームには必ず文字数制限を入れたい
しかも今回の場合は郵便番号の前半と後半部分なので3文字とかしか必要ないんだけど
もちろんクライアントサイド側でバリデートはさせるけど
どうしたらいいですか?
357:nobodyさん
14/10/06 10:05:58.70 .net
>>> f = ComboField(fields=[CharField(max_length=3),IntegerField()])
>>> f.clean(123)
123
>>> f.clean(1234)
Traceback (most recent call last):
django.core.exceptions.ValidationError
>>> f.clean("aaa")
Traceback (most recent call last):
django.core.exceptions.ValidationError
>>> f.clean("567")
567
>>> f.clean("5678")
Traceback (most recent call last):
django.core.exceptions.ValidationError
358:nobodyさん
14/10/06 11:13:11.67 .net
うわ、そんなやり方しないといけないの?
widgetとかCharFieldの方に入れるのかな?
何か複雑そうだなぁ
教えてくれてありがと
359:nobodyさん
14/10/06 22:27:56.00 .net
>>356
django.core.validators.MaxValueValidator を使えばもう少し簡潔に書けるかも。
少なくとも、フィールドの型を本来のものと変える必要はなくなる。
使い方 等々、上のパッケージとクラスでググるとドキュメントが出てくるよ。
360:nobodyさん
14/10/08 10:18:30.84 L8w+mBMY.net
Django
URLリンク(www.youtube.com)
361:nobodyさん
14/10/08 10:41:42.66 .net
>>360
マルチうぜぇ
362:nobodyさん
14/10/13 23:45:05.77 .net
views.pyを複数ファイルに分割すると
各viewで同じようなimport文を書くことになると思うんですけど
これスマートにできませんか? そういうもの割り切るしかないですか?
363:nobodyさん
14/10/13 23:59:05.29 .net
それはしゃーない
364:nobodyさん
14/10/14 11:41:08.90 .net
よくある、ユーザー登録する際にメールアドレスを登録してもらって、
そのメールに1回メールを送ってから、記載されたURLを開いて
存在確認が出来たらユーザー登録を許可するってのをやりたいんだけど、
contrib.authでコツコツ実装する感じですかね?
なんか、よくあるパターンなので、いいモジュールがあればと思ったんですが。
365:nobodyさん
14/10/14 16:31:09.62 .net
Flaskならこの本でそのものズバリの内容を
ステップbyステップで解説してるんだがなぁ
つか今安いな! この本すごく分かり易いから、
djangoな人にも参考になると思うよ
URLリンク(www.amazon.co.jp)
366:nobodyさん
14/10/14 17:37:58.26 .net
>>365
ステマ乙
367:nobodyさん
14/10/15 00:01:24.58 .net
和書なら関係者の疑いもわかるが、洋書で
ステマ言われるとは思わんかったわw
368:nobodyさん
14/10/15 16:53:22.20 .net
どうせリンク先見てないんだろ
URLリンク(www.amazon.co.jp)
URLリンク(www.amazon.co.jp)
369:nobodyさん
14/10/16 12:01:06.28 QKioo2JW.net
Django Version : 1.6.2
price = models.PositiveIntegerField(max_length=10, blank=True)
としてsyncdbした後MySQLAdminで確認すると、属性:UNSIGNEDとNULL:いいえとなってる
何でだろ?
自分は空白を許して、正の整数だけで登録したつもりなんだけど
どう変えればいいですか?
370:nobodyさん
14/10/16 14:08:03.63 .net
>>369
null=Trueってなかったっけ。
371:nobodyさん
14/10/16 14:10:13.09 .net
>>369
あ、空白か。空白はcharだから、charを継承したFieldを作らないとじゃないか。
372:nobodyさん
14/10/17 11:21:20.95 .net
質問させてください
Django+MySQLでトランザクションを実装しようと考えています
最初1.4の日本語訳を読んでいて'django.middleware.transaction.TransactionMiddleware'をsettings.pyに追加したところエラーが出ました
そこで調べているうちにバージョン1.6からトランザクション周りが変わったとのことを知りました
URLリンク(docs.djangoproject.com)
英語での解説を読むのですが、'django.middleware.transaction.TransactionMiddleware'についての記述が見当たりません
これはもはやsettings.pyに書く必要はなくなったのでしょうか?
373:nobodyさん
14/10/17 14:41:47.81 .net
Formって、Class内に一つでも使わないもの入れたらis_valid()通らないのな
ハマった
例えば
a = forms.CharField()
b = forms.CharField()
でHTML内でaのフォームだけ使った場合とか
クソ仕様だな
374:nobodyさん
14/10/17 20:54:26.84 .net
>>373
require=Falseにしとけよ。
375:nobodyさん
14/10/18 15:52:42.45 .net
馬鹿には無理
376:nobodyさん
14/10/18 19:51:18.31 .net
The Zen of Python
377:nobodyさん
14/10/21 18:09:20.88 no1UJMbX.net
URLリンク(cve.mitre.org)
378:nobodyさん
14/11/02 18:02:08.17 .net
ManyToManyにしないといけないところをForeignKeyにしてたわ
やりなおしかったるいからsqliteファイル直接いじって頑張ってみよう。。
379:nobodyさん
14/11/14 12:38:43.15 .net
formsって使ってる?
380:nobodyさん
14/12/12 11:28:40.00 .net
馬鹿には無理
381:nobodyさん
15/02/12 18:48:13.80 .net
gae上でdjangoを学ぼうと、eclipseにPyDev
入れてみました。
しかし、gaeに展開できるdjango1.5のプロジェクト
をうまく作れません。
ググってみたのですが、djangoのバージョンが
古いものばかりです。
どこかお薦めサイトがないでしょうか?
382:nobodyさん
15/02/12 21:51:50.94 .net
nonrel公式のチュートリアル見ればできるだろ
383:nobodyさん
15/02/13 16:13:01.92 .net
今どきEclipseとかJavaでも使わんのではないか
PyCharmにしとけ
384:nobodyさん
15/02/14 21:06:27.94 .net
emacsでいいんじゃない?
385:nobodyさん
15/02/16 08:45:20.39 SjRYYRjh.net
datおわた
2ch.net専用ブラウザの開発者の皆さまへ [転載禁止]2ch.net
スレリンク(software板)
【非報】Jane Style山下が2ch専ブラapiを使用許諾する権限を得る
スレリンク(poverty板)
386:nobodyさん
15/02/22 06:23:30.03 OQN9yj0H.net
馬鹿には無理
387:nobodyさん
15/02/22 14:18:27.03 .net
メモ
「Kivy」ではじめるPythonプログラミング―グラフィックライブラリでアニメーションを表現! 2013/11
URLリンク(www.amazon.co.jp)
388:nobodyさん
15/03/16 02:43:34.39 2jTe5y36.net
URLリンク(mizchi.hatenablog.com)
389:nobodyさん
15/03/18 08:24:26.87 nXibA0K9.net
はなだ ゆうじ
花田 雄司 男 1985.2.25 18 法政大学
URLリンク(www.ski-japan.or.jp)
390:nobodyさん
15/03/19 13:58:23.68 .net
ビッ○カメラ札幌店の副店長の佐藤伸弦が暴行事件が起きていた
佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦
佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦
佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦
佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦
佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦 佐藤伸弦