タグ付けされた質問 「django-views」

DjangoビューはMVCビューです。それらはレンダリング(通常はテンプレートを介して)と表示されるデータを制御します。

2
Djangoリクエストの取得パラメータ
Djangoリクエストには、次のものがあります。 POST:<QueryDict: {u'section': [u'39'], u'MAINS': [u'137']}> sectionとの値を取得するにはどうすればよいMAINSですか? if request.method == 'GET': qd = request.GET elif request.method == 'POST': qd = request.POST section_id = qd.__getitem__('section') or getlist....

3
Django DoesNotExist
「DoesNotExistエラー」を把握しようとして問題が発生しました。無回答の結果を管理する正しい方法を見つけようとしましたが、「DoesNotExist」または「オブジェクトに属性DoestNotExistsがありません」で引き続き問題が発生します。 from django.http import HttpResponse from django.contrib.sites.models import Site from django.utils import simplejson from vehicles.models import * from gpstracking.models import * def request_statuses(request): data = [] vehicles = Vehicle.objects.filter() Vehicle.vehicledevice_ for vehicle in vehicles: try: vehicledevice = vehicle.vehicledevice_set.get(is_joined__exact = True) imei = vehicledevice.device.imei try: lastposition = vehicledevice.device.devicetrack_set.latest('date_time_process') altitude = lastposition.altitude …

3
Djangoで同じパラメーターの複数の変数を使用してrequest.GETを処理する方法
Djangoビューではrequest.GET['variablename']、にアクセスできるため、ビューでは次のようなことができます。 myvar = request.GET['myvar'] 実際のrequest.GET['myvar']オブジェクトタイプは次のとおりです。 <class 'django.http.QueryDict'> ここで、同じパラメーター名を持つ複数の変数を渡したい場合、つまり: http://example.com/blah/?myvar=123&myvar=567 listパラメータに対してPythonを返したいmyvar場合は、次のようにします。 for var in request.GET['myvar']: print(var) ただし、URLで渡された最後の値のみを取得しようとすると、つまり上記の例では567が取得され、シェルの結果は次のようになります。 5 6 7 ただし、印刷request.GETすると、次のようになりますlist。 <QueryDict: {u'myvar': [u'123', u'567']}> 更新:最後の値を返すように設計されています。私のユースケースはリストが必要です。 djangoドキュメントから: QueryDict。getitem(key)指定されたキーの値を返します。キーに複数の値がある場合、 getitem()は最後の値を返します。キーが存在しない場合、django.utils.datastructures.MultiValueDictKeyErrorを発生させます。(これはPythonの標準KeyErrorのサブクラスであるため、KeyErrorのキャッチに固執することができます QueryDict.getlist(key)要求されたキーを含むデータをPythonリストとして返します。キーが存在しない場合は、空のリストを返します。ある種のリストを返すことが保証されています。 更新:django devがこれを行った理由を誰かが知っている場合は、私に知らせてください。リストを表示するのは直感に反しているようで、リストのようには動作しません。あまりパイソンではありません!

6
Djangoで作成したばかりのレコードのIDを取得するにはどうすればよいですか?
プロジェクトの1つにDjango1.3を使用していますが、データベースに保存したばかりのレコードのIDを取得する必要があります。 データベースにレコードを保存するために、以下のコードのようなものがあります。 n = MyData.objects.create(record_title=title, record_content=content) n.save() レコードのIDは、自動インクリメントを保存しました。そのIDを取得して、コード内の別の場所で使用する方法はありますか?

9
Djangoでテンプレートを使用せずにJSONを返すにはどうすればよいですか?
これはこの質問に関連しています:DjangoはクライアントのPythonに応じてjsonとhtmlを返します Djangoアプリ用のコマンドラインPythonAPIがあります。APIを介してアプリにアクセスすると、JSONが返され、ブラウザーではHTMLが返されます。さまざまなURLを使用してさまざまなバージョンにアクセスできますが、1つのテンプレートだけでviews.pyにHTMLテンプレートとJSONをレンダリングするにはどうすればよいですか? HTMLをレンダリングするには、次のものを使用します。 return render_to_response('sample/sample.html....') しかし、JSONテンプレートを配置せずにJSONに対して同じことを行うにはどうすればよいですか?(の代わりにするcontent-type必要がapplication/jsonありますtext/html) JSONとHTMLの出力を決定するものは何ですか? だから私のviews.pyで: if something: return render_to_response('html_template',.....) else: return HttpReponse(jsondata,mimetype='application/json')

3
カスタムHTTPヘッダーを介して参照URLを取得する方法はありますか?
現在、次の関数を使用して参照ビューを取得しています。 def get_referer_view(request, default=None): referer = request.META.get('HTTP_REFERER') if not referer: return default # remove the protocol and split the url at the slashes referer = re.sub('^https?:\/\/', '', referer).split('/') if referer[0] != request.META.get('SERVER_NAME'): return default # add the slash at the relative path's view and finished referer = u'/' + u'/'.join(referer[1:]) …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.