Greetings Ladies and Gents,
I am learning rails and am wondering about a best practice? Currently
I am trying to save specific tasks for a project. So tasks has a
belongs_to :project and project does has_many :tasks. Well when
creating a new task I need to store to project_id in the tasks table.
Currently I can set the @tasks.project_id = @projects.id in the
TasksController create method or I can set the @task.project_id =
@project.id in the TasksController new method and set a hidden_field
in the form_for for project_id for task.
Both ways seem unsexy, but its the best way I found. Is there a
better way? This is a nested resource also.
Current code:
<% form_for [:project, @task] do |form| -%>
<fieldset>
<legend>Project Info</legend>
<% fields_for :project do |p| %>
<%= p.text_field :name, :disabled => :true %>
<% end %>
</fieldset>
<fieldset>
<legend>Task</legend>
<%= render :partial => 'form', :object => form %>
</fieldset>
<p>
<%= submit_tag 'Create' %>
</p>
<% end -%>
Thanks.