使Grails域类可评论的最佳方法是什么?

时间:2013-05-06 18:48:30

标签: grails groovy grails-2.0 grails-domain-class

我的Grails应用程序中有不同的类,用户应为其创建注释。 例如,邮政,书籍,文章

设置

static hasMany = [comments: Comment]

每个班级似乎都是一个糟糕的解决方案。使它们可评论的最佳方法是什么?通用的评论类应该如何?

4 个答案:

答案 0 :(得分:0)

最简单的方法是在src / groovy中定义一个可注释的接口,让你的类继承这个接口。这只是普通的Java编码,但是您可以集中所有与注释相关的代码,希望能够围绕grails服务。如果你想获得幻想,可以使用注释。

完成后,您可以将此代码移到插件中,以便在不同的项目中使用它。

答案 1 :(得分:0)

为什么这是一个糟糕的解决方案?看起来对我来说完全正确。您的域类确实有很多评论,对吧?

答案 2 :(得分:0)

您也可以创建抽象基类Commentable,然后其他域可以扩展Commentable。现在,您可以使用belongsTo commentable创建Comment类。您还可以通过简单的Commentable.findAllBy(this)在Commentable类中实现getComments。在我看来,避免“hasMany”关系也是个好主意。

答案 3 :(得分:0)

您可以在此处使用继承。

创建具有此设置的基类

 static hasMany = [comments: Comment]

&安培;让所有其他类,如帖子,书,文章,继承它。