2

重複の可能性:
json からの django ファイルのアップロード

こんにちは、テンプレートから次の ajax アップロードを使用していますが、django ビューから応答がありません。何が問題なのか..アラートが表示されません

function ajax_upload(formid)
{
var form = $(formid);
form.ajaxSubmit({
  dataType:  'json',
  success:   function (data) {
  alert("Hereeeeeeee");
  if(data.status == '1')  
  {
     alert("Uploaded Successfull");
  }
  else 
  {
     alert("Uploaded UnSuccessfull :(");
  }
  }
} )   ; 
}

EDIT ジャンゴ:

  def someview(request):
      response_dict={'status':1}
      logging.debug("seen") //This is seen in the logs
      return HttpResponse(simplejson.dumps(response_dict), mimetype='application/javascript')

EDIT1

完全なソース コードについては、json からの django ファイルのアップロードもご覧ください。

4

3 に答える 3

0

そのログを表示することはかなり不可能です。したがって、これはPython構文エラーです。

response_dict{'status':1}

そして、次のようになります。

response_dict = dict(status=1)

また:

response_dict = {'status':1}

また:

response_dict = dict()
response_dict['status'] = 1

また:

response_dict = dict()
response_dict.update({'status':1})
于 2012-07-18T11:43:21.347 に答える
0

someviewurls.py に追加されたことを確認します。フォームに追加されたことを
確認します{% csrf_token %}

于 2012-07-18T11:32:48.030 に答える
0

あなたのコードから:

form.ajaxSubmit({
  dataType:  'json',
  success:   function (data) {
    alert("Hereeeeeeee");

コールバックは「成功」で実行されるため、失敗を django ビュー側に絞り込むことができます。すべてが構文的に正しいと仮定すると、json データを返すので、応答の mimetype は次のようになるはずです。

mimetype='application/json'.

それでもうまくいかない場合は、Firefox で Firebug を使用するか、Chrome で Developer Tools を使用してサーバーの応答を確認することをお勧めします。そこに django スタックトレースが表示されるはずです。

于 2012-07-18T12:24:52.153 に答える