-1
我有这样的模式:
class Project < ApplicationRecord
has_many :documents
belongs_to :course_unit
belongs_to :user
has_and_belongs_to_many :people
has_one :presentation
has_and_belongs_to_many :supervisors, :class_name => "Person", :join_table => :projects_supervisors
end
而这种模式:
class Presentation < ApplicationRecord
belongs_to :project
has_and_belongs_to_many :juries, :class_name => "Person", :join_table => :juries_presentations
end
当我创建一个新的项目,我有模型项目的许多属性和两个属性(室和日期)从演示模型,所以我不知道如何将数据从房间和日期属性发送到演示文稿模型。
所以我的问题是:如何创建一个新的项目,保存项目表和演示文稿表中的数据?
更新#1
我的项目负责人:
def new
@project = Project.new
end
def edit
end
def create
@project = Project.new(project_params)
@project.build_presentation
respond_to do |format|
if @project.save
format.html { redirect_to @project, notice: 'Project was successfully created.' }
format.json { render :show, status: :created, location: @project }
else
format.html { render :new }
format.json { render json: @project.errors, status: :unprocessable_entity }
end
end
end
def update
respond_to do |format|
if @project.update(project_params)
format.html { redirect_to @project, notice: 'Project was successfully updated.'}
format.json { render :show, status: :ok, location: @project }
else
format.html { render :edit }
format.json { render json: @project.errors, status: :unprocessable_entity }
end
end
end
private
def set_project
@project = Project.find(params[:id])
end
def project_params
params.require(:project).permit(:title, :resume, :github, :grade, :project_url, :date, :featured, :finished, :user_id, :course_unit_id, presentation_attributes: [ :date , :room ])
end
的项目我的指数的看法是:
<%= form_for @project do |f| %>
<%= f.fields_for :presentations do |ff| %>
<%= ff.label :"Dia de Apresentação" %>
<%= ff.date_field :date %>
<%= ff.label :"Sala de Apresentação" %>
<%= ff.text_area :room %>
<% end
<%= f.submit %>
<% end %>
在项目控制器中? –
是的,它可以用于创建操作。 – Thanh
好,它现在工作,现在我需要不是静态xD。我需要插入查看数据 –