Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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 NoMethodError-未定义的方法`状态';零级:零级_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails NoMethodError-未定义的方法`状态';零级:零级

Ruby on rails NoMethodError-未定义的方法`状态';零级:零级,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我试着在我的表格中找出每一种状态类型,并将其列在各自的标题下。当我运行这个程序时,我得到了票证的NoMethodError#索引,错误是读取nil:NilClass的未定义方法'status' index.html.erb <h2>New<h2> <% if @ticket.status == 'New' %> <% tickets.each do |ticket| %> <p><%

我试着在我的表格中找出每一种状态类型,并将其列在各自的标题下。当我运行这个程序时,我得到了票证的NoMethodError#索引,错误是读取nil:NilClass的未定义方法'status'

index.html.erb

<h2>New<h2>
<% if @ticket.status == 'New' %>
    <% tickets.each do |ticket| %>
                    <p><%= link_to ticket_path(ticket) do %>
                        <strong><%= ticket.category %></strong>
                    <% end %></p>
                    <p><%= ticket.requestor_name %></p>
                    <p><%= ticket.requestor_lab %></p>
                    <p><%= ticket.contact %></p>
                    <p><%= ticket.requested_by %></p>
                    <%= ticket.status %>
    <% end %>
<% end %>

您需要删除@ticket条件。因为我们没有看到任何相同的定义和使用

<% if @tickets.any? %>
  <% @tickets.each do |ticket| %>
    <% if ticket.status.downcase == 'new' %>
      <p><%= link_to ticket_path(ticket) do %>
        <strong><%= ticket.category %></strong>
      <% end %></p>
      <p><%= ticket.requestor_name %></p>
      <p><%= ticket.requestor_lab %></p>
      <p><%= ticket.contact %></p>
      <p><%= ticket.requested_by %></p>
      <%= ticket.status %>
    <% end %>
  <% end %>
<% end %>




您需要删除@ticket条件。因为我们没有看到任何相同的定义和使用

<% if @tickets.any? %>
  <% @tickets.each do |ticket| %>
    <% if ticket.status.downcase == 'new' %>
      <p><%= link_to ticket_path(ticket) do %>
        <strong><%= ticket.category %></strong>
      <% end %></p>
      <p><%= ticket.requestor_name %></p>
      <p><%= ticket.requestor_lab %></p>
      <p><%= ticket.contact %></p>
      <p><%= ticket.requested_by %></p>
      <%= ticket.status %>
    <% end %>
  <% end %>
<% end %>




导致错误的原因是没有返回
@tickets

这一行导致了错误

<% if @ticket.status == 'New' %>

这应该可以消除错误,但不能修复
@ticket
变量为空。

导致错误的原因是没有返回
@tickets

这一行导致了错误

<% if @ticket.status == 'New' %>

这应该可以消除错误,但它不能修复
@ticket
变量为空。

当您获得此消息时,控制器的“if”语句的哪部分正在运行,是否有
参数[“filter_by]”
呢?目前第二部分,我还没有将其添加到筛选器中断中。哪部分是“if”“当您收到此消息时,控制器的语句正在运行,是否有
params[“filter\u by]
是否?目前第二部分,我还没有进入筛选中断。除了我只想列出新的票证,而不是所有的票证。根据您的建议,我已经开始工作。我想中断新的票证,以便它们更可见。然后您需要在循环中添加条件,让我修改。我将t尝试此操作,但始终会有票证,我需要第一个if语句吗?理想情况下,如果没有记录,则可以在第一个if语句的其他部分中显示任何可用记录。或者,如果应用程序没有这种情况,则可以删除它。哦!太好了!这很有效,虽然我的标题都集中在顶部,但这是正确的不是这个问题的重点!谢谢!!除了我只想列出新的票证,而不是所有的票证。你的建议是,我已经有工作了。我想把新的票证分出来,这样它们就可以更明显了。然后你需要在循环中添加条件,让我修改。我会尝试,但总会有票证,我需要第一个if语句吗?理想情况下,如果您没有记录,那么您可以在第一个if语句的其他部分中不显示任何可用记录。或者,如果您的应用程序没有这种情况,您可以将其删除。哦!太好了!虽然我的标题都集中在顶部,但这不是问题的重点!谢谢!!好的!感谢您帮助理解错误以及为什么第一条语句需要在那里!好的!感谢您帮助理解错误以及为什么第一条语句需要在那里!