Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Rails 3渲染部分零对象_Ruby On Rails 3_Partial Views - Fatal编程技术网

Ruby on rails 3 Rails 3渲染部分零对象

Ruby on rails 3 Rails 3渲染部分零对象,ruby-on-rails-3,partial-views,Ruby On Rails 3,Partial Views,我觉得我在做些傻事。我正在制作一个简单的待办事项列表应用程序(我意识到已经有一百万个了)。我有一个项目定义和该项目中任务可以分配的各种状态 不管怎样,我在点击页面时会收到以下错误消息: nil:NilClass的未定义方法“title” 非常相似,但是,建议的解决方案似乎无法解决我遇到的问题。我只有一个与项目相关的状态,它不是零。我想知道这个问题是否与协会的状态有关 在我的项目中,我有: <% @project.statuses.each do |s| %> &

我觉得我在做些傻事。我正在制作一个简单的待办事项列表应用程序(我意识到已经有一百万个了)。我有一个项目定义和该项目中任务可以分配的各种状态

不管怎样,我在点击页面时会收到以下错误消息:

nil:NilClass的未定义方法“title”

非常相似,但是,建议的解决方案似乎无法解决我遇到的问题。我只有一个与项目相关的状态,它不是零。我想知道这个问题是否与协会的状态有关

在我的项目中,我有:

    <% @project.statuses.each do |s| %> 
      <%= s.inspect %> 
      <%= render 'statuses/show', :status => s %>
   <% end %>

#if I take out the render line - the status shows up 
更新-添加了更多错误消息

<p id="notice"><%= notice %></p>

<p>
  <b>Title:</b>
  <%= @status.title %>
</p>

<p>
  <b>Description:</b>
  <%= @status.description %>
</p>

<p>
  <b>Active:</b>
  <%= @status.active %>
</p>

<%= link_to 'Edit', edit_status_path(@status) %> |
<%= link_to 'Back', statuses_path %>
NoMethodError in Projects#show

Showing /home/.../app/views/statuses/_show.html.erb where line #5 raised:

undefined method `title' for nil:NilClass

我相信问题在于你在雇员再培训局部分中指的是
@status
,你应该指的是
status
,而不是前面的
@

@status
表示查找已定义的实例变量。当传入
:status=>s
时,表示视图将通过名为
status
的局部变量访问
s


另外,如果简单地
:status=>s
不起作用,请尝试
:locals=>{:status=>s}
。在任何情况下,在视图中访问
状态
,而不是
@status

最大的问题是
:状态
是渲染的一个选项。它将http代码呈现为200或:ok

应该做的是:

<%= render :partial => 'statuses/show', :locals => { :status => s } %>

你能给我们看一下status/\u show partial的内容吗?再加上堆栈跟踪中指向罪魁祸首行的部分。谢谢你,这正是它的内容。
<%= status.title %>