Двойные вложенные ресурсы сложны. Уловка с пользователями обычно заключается в том, чтобы не указывать желаемый путь входа.
Ваш вопрос довольно широкий, но если вы укажете больше информации, люди смогут вам лучше помочь. Также я бы порекомендовал использовать гем Devise для вашей системы управления пользователями. Поскольку вы используете «пользователи», я бы предположил, что вы хотите, чтобы пользователи из orgs создавали записи. Созданная запись будет частью org, а пользователь будет текущим пользователем сеанса. Извините, если я ошибаюсь, предположив это.
Ваш файл rout.rb может выглядеть примерно так (при условии, что rails 3):
ресурсов: orgs do
ресурсы: записи
конец
Тогда создание вашего контроллера ввода будет выглядеть так:
@entry = @org.entries.new(params[:topic])
@entry.user = current_user #or however you are managing the current user's session.
И вы хотите установить org для всего класса, создав метод, который загружает вашу текущую org и выполняет before_filter: loadOrg
def loadOrg
@org = Org.find(params[:id])
end
Это, конечно, при условии, что ваш путь выглядит примерно так: / org / (id) / entry / (entry_id)
а не
/ орг / (ID) / пользователь / (идентификатор_пользователя) / запись / (entry_id)
, что, на мой взгляд, не нужно и может привести к большему количеству проблем. Вы всегда можете создать модель страницы пользователя, которая вызывает все записи пользователей, но маршрут по умолчанию не обязательно должен включать пользователей в путь.