ruby-on-rails – 在轨道上没有使用ruby工作.为什么?
发布时间:2020-12-16 23:03:21 所属栏目:百科 来源:网络整理
导读:我有一个名为join的post方法,应该执行以下操作: 1)创建一个新对象 2)用json对象响应 这是我的代码: class GameController ApplicationController respond_to :json def join @p = Player.new(:name = params[:name]) @p.save! respond_with({:uuid = @p.uu
我有一个名为join的post方法,应该执行以下操作:
1)创建一个新对象 2)用json对象响应 这是我的代码: class GameController < ApplicationController respond_to :json def join @p = Player.new(:name => params[:name]) @p.save! respond_with({:uuid => @p.uuid}) end end 出于某种原因,respond_with调用始终失败并显示以下错误: undefined method `model_name' for NilClass:Class 如果我将respond_with调用更改为更简单的东西,我仍然会收到错误,例如: respond_with "hello" 产生此错误: undefined method `hello_url' for #<GameController:0x1035a6730> 我究竟做错了什么??我只想向他们发送一个JSON对象! PS,我的路线文件看起来像这样: match 'join' => 'game#join',:via => :post 解决方法
我相信respond_with方法要求您将资源(@p)作为参数传递.这是
some documentation for the method.
试试这个: respond_with @p,:only => [:uuid] 你也可以这样渲染json: render :json => { :uuid => @p.uuid } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |