これはこの質問に関連しています: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')