不确定如何设置此对象关联

发布于 2024-12-12 02:45:25 字数 302 浏览 0 评论 0原文

好的,这是布局。我有一个配置文件对象,它有很多与之关联的其他对象。我试图让我的用户在他们的个人资料中列出过去和现在的挣扎。我有我的基本斗争对象,它只有一个斗争领域,然后我有一个战斗对象,它是我的查找表,因此它包含一个 profile_id,斗争_id。

如果我所有的挣扎都是一样的,那很好,但我需要弄清楚如何区分现在和过去的挣扎。我在战斗表中添加了一个布尔值,但老实说,我不确定如何使这一切都按轨道方式工作。我是否为过去和现在创建继承斗争的模型对象?我如何获取我的个人资料才能看到他们?

谢谢,我将按照社区的指示更新任何代码。

运行轨道3.1

Ok here's the layout. I've got a profile object which has a lot of other objects associated with it. I'm trying to allow my users to list past and present struggles in their profile. I have my base struggle object which just has a struggle field and then i have a battle object which is my lookup table so it contains a profile_id, struggle_id.

This is fine if all my struggles are the same but i need to figure out how to differentiate between a present and past struggle. I added a boolean to the battles table, but honestly i'm not sure how to make this all work the rails way. Do i create model objects for past and present which inherit struggle? how do i get my profile to see them?

thanks and i'll update with any code as directed by the community.

Running Rails 3.1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

听风念你 2024-12-19 02:45:25

尝试使用可以为 NULL 的时间戳,而不是连接表中的布尔值。如果时间戳为空,那么你就知道他们还没有克服困难。如果存在时间戳,则他们已经克服了困难,并且您知道它何时完成。

您是否使用 (has_many :through => :struggles) 或类似的?你可以这样做(has_many, :through => :struggles, :order => 'struggles.timestamp')。不确定如何从配置文件对象访问 join_table 的属性——但我希望这是一个好的开始!

Instead of a boolean in the join table trying use a Timestamp which can be NULL. If the Timestamp is NULL then you know they haven't overcome the struggle. If the timestamp is present, they have overcome the struggle AND you know when it was done.

Are you using (has_many :through => :struggles) or similar? You can do (has_many, :through => :struggles, :order => 'struggles.timestamp'). Not sure how you can access the join_table's attributes from the profile object -- but I hope this is a good start!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文