2016-12-26 5 views
0

Я использую метод для связывания с проектом. Под кодом естьОтсутствующие необходимые ключи: [: id] rails 4

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 работают нормально.

ответ

0

Это будет работать в Rails. Но больше не работает с activerecord 3.2.11, от чего зависит Rails 4. Если вам нравится больше узнать, обсудите this обсуждение.

+0

Есть ли решение для этого ... – Vikiesakki

0

Привет я, наконец, я получил решение для этого

Мы должны передать идентификатор в качестве параметра, как этот

link_to_project(project,{:id=>project.id}) 
0

Я думаю, что вы ищете это:

link_to(project.name, project) 

или, более явно, это:

link_to(project.name, project_path(project)) 

Более подробная информация об этом в Rails Routing from the Outside In.