ошибка рельсов "у вас могут быть неоднозначные маршруты" - PullRequest
1 голос
/ 16 сентября 2009

У меня проблема с моими маршрутами и именем пути, который он генерирует. Или я называю это неправильно в представлении или что-то ... не совсем уверен. Мои отношения в моих моделях следующие:

class Client < ActiveRecord::Base
  has_many :users
  has_many :elements, :through => :users 
end

class Element < ActiveRecord::Base
  belongs_to :user
end

Мои маршруты такие:

map.resources :elements
map.resources :clients, :has_many => :elements

И, на мой взгляд, у меня есть:

<%= link_to element.name, client_element_url %>

Но я получаю ошибку:

    edit_client_element_url failed to generate from {:action=>"edit", :controller=>"elements"} - you may have ambiguous routes, or you may need to supply additional parameters for this route.  content_url has the following required parameters: ["clients", :client_id, "elements", :id, "edit"] - are they all satisfied?

Я не уверен, как поступить, мне не хватает чего-то, что находится прямо в моем лице?

1 Ответ

2 голосов
/ 16 сентября 2009

Вам необходимо передать элемент и клиент методу url:

<%= link_to element.name, client_element_url(element.client, element)

Таким образом, он знает, какие client_id и element_id использовать в маршруте

/clients/:client_id/elements/:element_id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...