问题而编辑记录

问题描述:

我TREID编辑我的一个表记录在轨道3,但发生这样的错误安: 的ActiveRecord :: RecordNotFound在WordsController#编辑 在我的控制器:问题而编辑记录

def edit 
     @adverb =Adverb.find(:id) 
    end 

并在我看来我有:

<% @adverb.each do |av| %> 
      <tr class="<%= cycle("odd", "even") -%>"> 
      <td><%= av.name %></td> 
      <td><%= av.bedeutung %></td> 
      <td> 
      <%= link_to 'edit',{:controller => 'words',:action => 'edit',:id=> av.id} %> 
      </td> 
      </tr> 
<% end %> 

我该如何解决这个问题?

尝试

@adverb = Adverb.find(params[:id]) 
+0

我做到了,但没有效果:( –

+0

编辑,因为我在评论中回答 – rtcoms

它只是

@adverb = Adverb.find(params[:id]) 

你不使用where语句

+0

耶!我的错误:( – rtcoms

:id只是一个符号需要时只需要结束多数民众赞成的。第一选项,正在寻找params散列内的那个符号的值

所以不是

Adverb.find(:id) 

使用

Adverb.find(params[:id]) 

这将返回的:id的价值params哈希这可能是未来的格式匹配单个记录你的网址/adverbs/:id

如果没有用提供的ID记录,然后会产生一个ActiveRecord::RecordNotFound异常,在开发过程中会向您显示堆栈跟踪页面,并且在生产中将显示一个404页面。