Ruby on rails Rails:render不';无法工作,仍然缺少get`模板`
我目前正在学习Rails指南。我完成了这些步骤,但仍然遇到了一个错误 我的Ruby版本是Ruby on rails Rails:render不';无法工作,仍然缺少get`模板`,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我目前正在学习Rails指南。我完成了这些步骤,但仍然遇到了一个错误 我的Ruby版本是Ruby2.1.1p76,Rails版本是4.0.4 按照指南的指示,我创建了一个文章控制器 class ArticlesController < ApplicationController def new end def create render plain: params[:article].inspect end end 以下是我的相关路线: articles GE
Ruby2.1.1p76
,Rails版本是4.0.4
按照指南的指示,我创建了一个文章控制器
class ArticlesController < ApplicationController
def new
end
def create
render plain: params[:article].inspect
end
end
以下是我的相关路线:
articles GET /articles(.:format) articles#index
POST /articles(.:format) articles#create
更新:
render plain:
是参考的Rails 4.1.0
中引入的一种新方法。您可能需要通读
当您响应Ajax或API时,呈现纯文本是最有用的
web服务请求期望的内容不正确
HTML
如果您想在页面上查看params[:article]的文本信息,则可以使用
呈现文本
试试这个
class ArticlesController < ApplicationController
def new
end
def create
render text: params[:article].inspect
end
end
您不需要模板意味着您可以使用render nothing:true 试着这样做:
class ArticlesController < ApplicationController
def new
end
def create
params[:article].inspect
render nothing: true
end
end
class-ArticlesController
请在
渲染
方法中参考此链接,在Rails 4.1
中添加了普通
选项,您正在使用Rails 4.0.4
。因此,rails忽略了这个选项,开始查找名为articles/create
的模板,就像您在ArticlesController\create
操作中一样。很明显,模板不存在,因此您会得到错误信息模板丢失
请参阅
现在,要使用下面提到的语法,您需要升级到Rails 4.1
:
render plain: params[:article].inspect
使用当前版本的Rails 4.0.4
,您可以:
render text: params[:article].inspect
更改文件中的Rails版本:
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.6'
然后运行:
bundle install
确保您的Rails版本现在>4.1我碰巧遇到了相同的错误。我必须使用rails 3.2,因为我正在使用的实际应用程序有这个版本。不管怎样,你知道有没有机会得到这个版本的教程?我在网站上没有找到任何记录。也许我挖得不够多,v3.2的相关指南是。请参阅底部的
render
文档。适用于Rails 3.2.12。
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.6'
bundle install