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 请教某软件缓存Ts文件破解合并mp4的方法
  • ¥15 求小游戏炸弹人中关于敌人的C++代码
  • ¥15 拿到这个服务器最高权限有偿
  • ¥50 来个抓app跳转支付宝转链接的
  • ¥15 remotes安装提示没有description文件
  • ¥15 AttributeError: 'NoneType' object has no attribute 'drop_duplicates'报错
  • ¥15 以下代码,运行结果报错
  • ¥15 Vivado仿真数据出错
  • ¥15 银河麒麟不支持vant等前端框架怎么办?
  • ¥15 vue3的子组件在父页面调用不显示不生效问题