Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails-嵌入式多态注释列表+;添加评论表单-示例?_Ruby On Rails_Model View Controller_Forms_Comments_Polymorphism - Fatal编程技术网

Ruby on rails Rails-嵌入式多态注释列表+;添加评论表单-示例?

Ruby on rails Rails-嵌入式多态注释列表+;添加评论表单-示例?,ruby-on-rails,model-view-controller,forms,comments,polymorphism,Ruby On Rails,Model View Controller,Forms,Comments,Polymorphism,嘿,大家好。正在开发我的第一个Rails应用程序 我搜索了所有地方——阅读了大量教程、文章和论坛帖子,观看了一些屏幕广播,我发现了一些与我试图做的事情非常接近的例子(特别是关于嵌套模型表单的ep 196),但并不完全如此 我有两个需要评论的模型(Podcast和BlogPost),我有一个与这两个模型多态相关的评论模型。上面的railscasts有一个非常类似的例子(EP154),但Ryan使用了一整套嵌套的路线,因此有特定的模板用于添加和编辑注释。我想做的是在Podcast或BlogPost页

嘿,大家好。正在开发我的第一个Rails应用程序

我搜索了所有地方——阅读了大量教程、文章和论坛帖子,观看了一些屏幕广播,我发现了一些与我试图做的事情非常接近的例子(特别是关于嵌套模型表单的ep 196),但并不完全如此

我有两个需要评论的模型(Podcast和BlogPost),我有一个与这两个模型多态相关的评论模型。上面的railscasts有一个非常类似的例子(EP154),但Ryan使用了一整套嵌套的路线,因此有特定的模板用于添加和编辑注释。我想做的是在Podcast或BlogPost页面上显示评论列表,并在底部添加评论表单。我不需要单独的添加模板/路线,也不需要编辑,只需要删除

这是web上非常常见的设计,但我找不到专门针对这种模式的Rails示例。以下是我目前的理解:

当然,我需要创建和删除操作的路由,但是没有与之关联的模板。我还猜测,正确的方法是创建一个可以包含在Podcast和BlogPost show模板底部的分部。在我看来,分部的逻辑名称类似于_comments.html.haml。我知道传递给分部的对象以模板命名是一种常见的约定,但是调用对象“comments”似乎与我的用例不匹配,因为我真正需要传递的是可注释对象(Podcast或BlogPost)。所以,我想我应该使用局部变量选项来进行渲染部分调用?(:commentable=>@podcast)

在partial中,我可以调用commentable.comments来获取comments集合,使用第二个partial来呈现它(这一次使用常规用例,调用partial _comment.html.haml),然后创建一个表单提交给。。。什么?就其他方面而言,它应该是一篇到集合的帖子,应该是/podcast | blogpost/:id/comments,我认为如果它是一篇podcast,那么它的助手就是podcast_comments_path(podcast)——不确定该怎么做,因为我使用的是多态评论。这将触发Comment.create操作,然后需要重定向回podcast | blogpost path/podcast | blogpost/:id


这一切都有点让人不知所措,这就是为什么我真的希望找到一个专门实现这种设计的屏幕广播或示例。

我找到了它,实现了它,测试了它,最后写了一篇教程,解释如何为其他人做这件事:


您是否有任何来源显示您尝试过的内容以及故障在哪里?你的帖子有点让人不知所措,所以也许看到一些代码会很有帮助。对不起,我不知道,因为我不知道如何实现它。如果您认为相关的话,我可以提供支持代码,比如模型和路由定义。此外,如果从描述中不清楚我要做什么,我可以尝试更好地澄清它…这不应该真正有嵌入式标签,因为它不是关于编程嵌入式系统。我没有足够的代表更改标记。我用更合理的内容更新了标记。这是我关于stackoverflow的第一个问题,我不确定什么是合适的,我的思想仍然在Rails领域。