首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ajax调用上的双重请求--首先获得状态400,然后获得状态200

ajax调用上的双重请求--首先获得状态400,然后获得状态200
EN

Stack Overflow用户
提问于 2015-04-15 14:31:03
回答 1查看 168关注 0票数 0

我有以下操作来创建记录:

代码语言:javascript
复制
def create
    @categorization = Categorization.new(categorization_params)
    @categorization.save
    respond_to do |format|
      format.json {  render json: {categorization: @categorization.to_json},  success: 200  }
    end
  end

  private
  def categorization_params
    params.require(:categorization).permit(:user_id, :category_id)
  end

这是我的jquery代码:

代码语言:javascript
复制
$("#save-category").click(function(){
    var category_id = $('#categorization_category_id').val();
    var category_name = $('#categorization_category_id  option:selected').text();
    var user_id = "#{current_user.id}";
    var cat_id;
    $.ajax({
      url: "#{dashboard_categorizations_path}",
      type: 'POST',
      dataType : 'json',
      data: {'user_id': user_id, 'category_id': category_id},
      success: function(result) {
        console.log(result);
        // cat_id = JSON.parse(result.id);
        // alert(cat_id);
      },
      error: function(result) {
        console.log(result);
        // cat_id = JSON.parse(result.id);
        // alert(cat_id);
      }
    }); // end ajax call
    $("#categoriamensaje").show();
    var leadMessage = setInterval(function(){
          $("#categoriamensaje").hide();
        }, 3000);
  });

我的巡查员给我看的是:

正如您所看到的,在单击按钮后,我可以用状态400和状态200来响应我:

第一个答复如下:

操作控制器::参数错误在/仪表板/分类 缺少param或值为空:分类app/controllers/dashboard/categorizations_controller.rb,行30 30 params.require(:categorization).permit(:user\_id, :category\_id) 31 end 32 end

代码语言:javascript
复制
and the second one:

```javascript

分类:{“id”:60,"user_id":1,"category_id":7,"created_at":"2015-04-15T14:27:55.039Z",“updated_at”:“2015-04-15T14:27:55.039Z”}

代码语言:javascript
复制

创建了记录,但我需要捕获ajax响应,以便在视图中显示信息。

请帮帮忙。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-15 14:45:33

看起来,您需要包装在categorization对象中发布的JSON有效负载,如下所示:

代码语言:javascript
复制
{ "categorization": { "user_id" : "1", "category_id" : "1" } }

因此,您的JQuery代码应该如下所示:

代码语言:javascript
复制
data: { 'categorization' : { 'user_id': user_id, 'category_id': category_id} }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29653044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档