小编Bri*_*gan的帖子

Backbone.js和Rails - 如何处理来自Backbone模型的参数?

在标准的Rails控制器中,我创建了一个这样的记录:

@user = User.new(params[:user])
Run Code Online (Sandbox Code Playgroud)

这假设嵌套的表单参数是嵌套的.

我一直在玩Backbone.js,我注意到默认情况下,Backbone没有像普通的Rails格式那样嵌套参数,这实际上是我所期待的.所以我想知道我应该做些什么......

在服务器端弄清楚,如果它是来自Backbone的请求,通过查看接受标题等,并自己操纵params,这样我可以保持我的控制器代码小:

do_some_params_manipulation_with(params)
@user = User.new(params[:user])
respond_to do |format|
  if @user.save
    format.html {redirect_to users_url}
    format.json {render :json => @user.to_json }
  end
end
Run Code Online (Sandbox Code Playgroud)

或者,我是否在每个分支中实例化对象,最终会重复代码,但从长远来看可能更易于维护....

respond_to do |format|
  format.html do
    @user = User.new(params[:user])
    if @user.save
      redirect_to users_url
    end
  end

  format.json do
    @user = User.new(params) # and rely on mass-assignment protection
    if @user.save
      render :json => @user.to_json
    end
  end

end
Run Code Online (Sandbox Code Playgroud)

或者我是否通过重写.toJSON方法修改我的Backbone.js模型(我不完全确定如何做,因为我还不太了解Backbone.js)所以它嵌套了params?

在这种情况下,我可以访问应用程序的两面,但我对其他人正在做的事感兴趣.

ruby-on-rails backbone.js

23
推荐指数
2
解决办法
9072
查看次数

标签 统计

backbone.js ×1

ruby-on-rails ×1