2014-01-09 5 views
0

Предположим, у меня есть модель Factory, которая has_manyEmployees.Отправка данных контроллеру с помощью form_for

На мой взгляд, я следующее:

%h3 
    = @factory.name 

%h3 Add new employee : 
= form_for :employee do |f| 
    .field 
    = f.label "Name :" 
    = f.text_field :name 
    .field 
    = f.label "Age :" 
    = f.text_field :age 
    .actions 
    = f.submit 'Save new employee' 

В мой контроллер, я хочу, чтобы извлечь в id переменной @factory, которая была в представлении. Как я могу получить к нему доступ?

Спасибо.

ответ

1

два способа сделать это первый создает вложенные маршруты http://guides.rubyonrails.org/routing.html#nested-resources

resources :factories do 
    resources :employees 
end 

или создать hidden_field для этого, и назначить его значение к нему

+0

Спасибо за быстрый ответ =) – Pol0nium

1

На контроллере, делающего форма создать @employee экземпляр, связанный с @factory

class EmployeesController < ApplicationController 
    def new 
    @factory = Factory.find params[:id] 
    @employee = @factory.employees.build 
    end 
end 

А на представлении использовать экземпляр @employee вместо :employee

= form_for @employee do |f| 
    ... 
+0

Спасибо за быстрый ответ =) – Pol0nium

Смежные вопросы