0

私は2つのモデルを持っています。

  • コミュニティ
  • CommunityTopic

コミュニティhas_manyCommunityTopics _

しかし、1つのコミュニティが所有するCommunityTopicsの数を制限したい場合はどうなりますか?1つのコミュニティが所有できるレコードを1000個までに制限したいと思います。

フラッシュエラーメッセージを含むコントローラーの新しいアクションでそれをコーディングするにはどうすればよいですか?そして、models / community_topics.rbに何をコーディングする必要がありますか?

4

1 に答える 1

2

CommunityTopicモデルに検証を追加する必要があります。check_limits

def check_limits
  if self.community.communitytopics.count == 1000
    self.errors.add("can't create more topics for this community")
    false
  else
    true
  end
end

後で変更する必要がある場合に備えて、1000 と書くだけでなく、定数を使用することをお勧めします。

于 2013-01-01T19:23:01.083 に答える