缺少必需的键:[:id] rails 4

时间:2016-12-26 08:06:13

标签: ruby-on-rails-4 ruby-on-rails-4.2

我正在使用该方法链接到项目。代码下面是

project = Project.new
project.id = value["id"]
project.name = value["project_name"]  
<td width="20%"  class="left"><%= link_to_project(project) %></td>

错误

 No route matches {:action=>"show", :controller=>"projects", :id=>#<Project id: 2343, name: " TESTING", description: nil, homepage: "", is_public: false, parent_id: nil, created_on: nil, updated_on: nil, identifier: nil, status: 1, lft: nil, rgt: nil, inherit_members: false, product_backlog_id: nil, default_version_id: nil>} missing required keys: [:id]

我发现此错误无效。我不知道如何解决这个问题。但轨道3.2工作正常。

3 个答案:

答案 0 :(得分:0)

这适用于Rails。但不再适用于activerecord 3.2.11,这是Rails 4所依赖的。如果您想了解更多信息,请通过this讨论。

答案 1 :(得分:0)

嗨,我终于得到了那个

的解决方案

我们必须将id作为参数传递给

private void setupPicasso()
{
    final Picasso picasso = new Picasso.Builder(getApplicationContext())
            .downloader(new OkHttpDownloader(getPrimaryHttpClient()))
            .build();
    Picasso.setSingletonInstance(picasso);
}

答案 2 :(得分:0)

我认为你在寻找的是:

link_to(project.name, project)

或更明确地说:

link_to(project.name, project_path(project))

Rails Routing from the Outside In中有更多相关信息。