我的Grails应用程序中有不同的类,用户应为其创建注释。 例如,邮政,书籍,文章
设置
static hasMany = [comments: Comment]
每个班级似乎都是一个糟糕的解决方案。使它们可评论的最佳方法是什么?通用的评论类应该如何?
答案 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]
&安培;让所有其他类,如帖子,书,文章,继承它。