谁能想到控制器中声明的实例变量不会被其视图识别的原因?
控制器看起来像这样:
class UsersController < ApplicationController
...
def show
@questionshow = session[:profilequestioncapture]
@user = User.find(params[:id])
@question = Question.where("id = ?", @questionshow).first
...
和视图:(用户目录中的show.html.erb :)
...
<dl class="dl-horizontal">
<dt>Headline</dt>
<dt>Description</dt>
<dt>Budget</dt>
<dd><%= @question.headline %></dd>
<dd><%= @question.description %></dd>
<dd><%= @question.currency %> <%= @question.budget %></dd>
</dl>
....
-会话正确填充@questionshow 实例变量。它只包含 id,这会正确传递给@question。
- 奇怪的是: <%= @user.xxxx %> 得到正确格式化和显示,而带有 <%= @question.xxx %> 的任何东西都没有。
- 这是更奇怪的事情。如果我在控制器中注释掉 @user 记录仍然正确显示在视图中,所以它实际上忽略了控制器中的内容(但我不知道为什么)
- 是的,我已经检查过我正在查看正确的控制器和查看器。