了解关联表的表单如何工作
我是 ror 新手。这是我的问题。 我使用生成脚手架命令创建两个表部分和学生。列是 部分 - 名称:字符串 学生 - name:string section_id:integer
in model
section.rb
has_many :students
in model
student.rb
belongs_to :section
现在学生新表单有两列需要填写,即姓名和部门。要创建新学生,我是否必须知道学生所属的每个部门的 id?有没有其他方法来获取我输入学生姓名和她的班级的表格?将学生表中的连接列更改为“section_name”会有帮助吗?
I am new to ror.This is my question.
I use generate scaffold command to create two tables section and student.the columns are
section - name:string
student - name:string section_id:integer
in model
section.rb
has_many :students
in model
student.rb
belongs_to :section
Now the student new form has two columns to be filled i.e name and section.To create a new student should I have to know the id of each section to which a student belongs to? Is there any other way to obtain a form where I enter the student name and her section?Will changing the join column to section_name in students table help?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您不需要更改表中关联的列名称。您的模型关联是正确的。
1)是的,您应该知道创建学生的每个部分的ID。
2)您的表单应类似于
学生控制器的创建操作中的 和 。
这里@sections=Section.all
You do not need to change the associated column name in table. your model association is correct.
1) Yes you should know the id of each section to create student.
2) your form should look like
and in the create action of student controller.
here @sections = Section.all
例如:
更多详细信息。
Something like:
More detailed info.
假设您的表单为您提供了 :name 和 :section_id,您可以在 Students#create 中执行此操作。
Assuming your form gives you :name and :section_id, you can just do this in students#create.