你会如何在Rails 3中模拟不同的帖子类型?

时间:2012-10-16 02:19:34

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2

我被困住了。我正在尝试在Rails 3中创建一个应用程序,允许用户创建一个帖子,它可以是图像,照片或文本。我希望我的帖子索引显示所有三种类型的帖子,并创建一个“发布者”,允许用户创建一个图像,照片或文本帖子。我已经尝试了一切,包括STI和has_one关系,但似乎没有任何东西以Rails优化的方式出现,它让我发疯!肯定有一些我想念的东西。请帮忙!

2 个答案:

答案 0 :(得分:1)

这听起来像你想要一个有很多帖子的帖子类型

您的类型表和型号

  Types Table
| id  |   type  |
| 1   |  image  |
| 2   |  photo  |
| 3   |  text   |

class Type < ActiveRecord::Base
    has_many :posts
end

然后你的帖子表和模型

Post Table
|  id  | name | content | type_id | user_id |

class Post < ActiveRecord::Base
  belongs_to :types
  belongs_to :users
end

因此,当您提出查询时,您可以说: Type.include(:帖).find(1)

答案 1 :(得分:0)