【发布时间】:2013-06-06 16:36:14
【问题描述】:
我正在构建一个简单的琐事应用程序,并为我的表单使用引导生成器。在我的模型的新表单和更新表单中,模型名称没有出现在我的视图中。这是app/views/questions/new.html.erb的代码:
<div class="page-header">
<h1>
<%=t '.title', :default => [:'helpers.titles.new', 'New %{model}'], :model => @model_name %>
</h1>
</div>
<%= render :partial => 'form' %>
这是我的questions_controller.rb:
class QuestionsController < ApplicationController
...
def new
@model_name = Question.model_name.human
@question = Question.new
respond_to do |format|
format.html # new.html.erb
format.json { render json: @question }
end
end
...
private
def question_params
params.require(:question).permit(:body)
end
end
New 这个词出现在视图中,但没有显示模型名称...
有人知道这里发生了什么吗?
FWIW 我在 2.0 和 1.9.3 上进行了尝试,结果相同。
【问题讨论】:
-
如果你真的想在视图中定义变量你可以这样做
<% @model_class = 'Question' %> -
我试过了,得到了
undefined local variable or method 'model_class' -
不应该将
'New %{model}'改为"New #{@model_name}"吗? -
@kiddorails 刚刚尝试过 - 没有骰子。
-
即使我只用“问题”替换
%{model},我仍然只能在视图中看到New...
标签: ruby-on-rails views twitter-bootstrap-rails