kilik52 2008-12-11 23:56
浏览 192
已采纳

这样的需求在rails中该怎么弄?

我想创建一个people表,里面有name等基础属性。另外还想记录该Person曾经就读的学校。一个人可以添加多个学校。例如:
name: AAA, school: school_1, school: school_2, ......
我想过用join表,但是这样school的信息就不在people表里面了。
请问想用restful来满足这样的需求应该怎么弄?谢谢!

[b]问题补充:[/b]
谢谢foxgs的回答。model方面没有问题了。但是在View和Controller上我不知道怎么弄。比如:
scaffold person
scaffold school
又弄了一个model person_school, 里面有person_id和school_id,还有些addtional的字段,比如major_in:string。
按照网上查到的方法,在Person类里面写了
[code="ruby"]
has_many :person_schools
has_many :schools, :through => person_schools
[/code]
在School类里面也类似地写了。

这个是model方面,但是如果我在Person的new.html.erb里面想让用户输入自己就读的学校,并且输入自己的专业,应该怎么写呢。
我用
[code="ruby"]
<%= f.text_field :person_schools.major_in %>
[/code]
显示错误。。。

而且在Controller里面怎么让@person.save正确?
[b]问题补充:[/b]
已经解决,对我有最大帮助的是foxgst,分数就给你了。
另外谢谢yangtao309的回答。

  • 写回答

2条回答 默认 最新

  • iteye_10592 2008-12-12 09:35
    关注

    这是典型的多对多的问题,你搜索一下rails many-to-many。

    另《Web开发敏捷之道》一书中有详细说明。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么