【问题标题】:How to allow users to comment in a blog post developed in Grails如何允许用户在使用 Grails 开发的博客文章中发表评论
【发布时间】:2013-05-29 22:09:53
【问题描述】:

我在一个 grails 应用程序中有博客,我已经可以显示一个页面,其中包含所有博客条目的摘要;当用户单击“阅读更多”按钮时,我也可以显示单个帖子,但是在这样做之后,另一个 gsp 文件也会显示帖子内容和 cmets 会话。但是知道我想让用户通过表单发表评论,所以我的问题是如何实现这一点?我已经知道我需要在我的表单标签中设置一个 params 方法: 和我也发送此参数以保存操作以保存新评论,但如何实际保存此参数以及如何告诉数据库评论属于当前帖子 注意:Comment 域类有“static belongsTo = [post: Post]”,而 Post 域类已经有“static hasMany = [statements: Comment]”

【问题讨论】:

  • 更多细节:我知道的每个博客的工作方式是,如果某个用户在博客文章中写了评论,他会填写表格并点击发送按钮,页面会重新加载并显示新评论.所以我需要将表单中填写的参数发送到控制器,以便将它们保存在数据库中,然后再次渲染博客页面,它必须读取存储在数据库中的所有 cmets,包括新的

标签: forms grails post comments blogs


【解决方案1】:

所以你的表单应该存储帖子的 ID。

<g:form name="myForm" action="save" controller="comment" id="${post.id}" >
    //Form data here
</g:form>

然后在你的控制器中:

Post post = Post.get(params.id)
post.addToComments(new Comment())

【讨论】:

  • 您确定我必须将新评论保存在 PostController 中吗?我虽然我必须在我的 CommentController 中这样做
  • 您可以在任何您想要的控制器中执行此操作。在评论控制器中这样做是有意义的,我有示例表单。
  • 这是一个非常简洁易懂的评论,让我进一步了解了您的问题。
猜你喜欢
  • 2022-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-03
  • 2018-09-12
  • 1970-01-01
  • 2011-10-15
相关资源
最近更新 更多