问题标签 [nested-routes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
310 浏览

ruby-on-rails-3 - rails嵌套资源和初始化资源的路由

在使用嵌套表单/资源和路由时,rails 的正常运行方式存在问题。

我有两张表,单词和定义......

词有很多定义,但我不会创建一个词,直到它至少有一个定义。

模型和控制器端的一切都有效,但我不知道如何处理表单助手。

这非常有效,但前提是 @word 确实存在并且不是新的 UNSAVED 记录。控制器中的 IE 我正在find_or_initialize_by调用 Word,然后建立一个定义。

这个词,但前提是这个词不存在。IE 如果我尝试使用这种结构进行编辑,我会得到一个奇怪的 url(这不起作用)。 words/12345/definition/12345

我尝试使用url_for帮助程序,但结果与上述类似......

还有其他想法吗?

0 投票
3 回答
2364 浏览

ruby-on-rails - Rails 3 - 如何更改资源中的参数:id

routes.rb,

resources :projects

给出以下路线

在使用嵌套资源时

它给出了以下路线

这给了我一个问题,因为我必须编写特定于控制器的 before_filter 在params[:id]params[:project_id]for之间进行选择Project.find(params[:project_id] || param[:id])

有什么办法可以改变:project_id所有路线的路线吗?

0 投票
4 回答
488 浏览

ruby-on-rails - 带有嵌套资源的简单 Acts_as_tree

使用 Rails 3.1.1 和 gemacts_as_tree。我已经用谷歌搜索了这个问题并在 SO 上检查了类似的问题(答案太旧或不相关)。

我有一个名为 article 的模型,其路线今天看起来像:

我有三篇文章:“书”、“第 1 章”和“第 2 章”。book 是第 1 章和第 2 章的父级。

今天,我每篇文章的路径是:host.com/book、host.com/chapter1 和 host.com/chapter2。我希望 url 路径是 host.com/book/chapter1 和 host.com/book/chapter2 ,即嵌套路由。

如何以干净简单的方式创建它?

基本上,我想要一个路径,它将是 host.com/:parent_id/:parent_id/:id 和 N 个 :parent_id。几乎是如何路由 Wordpress 文章的。

我不相信路由 globber 是解决方案,但我可能错了。host.com/:id 和 host.com/foo/bar/:id 似乎给出了相同的结果,这将导致重复的内容。

0 投票
1 回答
402 浏览

ruby-on-rails - Rails 嵌套资源路由

我对 Rails 很陌生,我认为我没有完全理解路由。当我尝试访问编辑操作时,出现以下错误:

这是我对引发此错误的链接的看法:

这是我的嵌套路线:

这是我的控制器

模型店

模型用户

请帮忙。

0 投票
2 回答
2381 浏览

ruby-on-rails - 嵌套命名空间路由到错误的控制器

使用 Rails 3.0.7,我正在为我们的应用程序创建一个 API,并且我有这个设置:

路线.rb

然后我有我的常规app/controllers/application_controller.rbapp/controllers/users_controller.rb文件以及我的app/controllers/api/v1/application_controller.rbapp/controllers/api/v1/users_controller.rb文件,定义如下:

在一切似乎都正常工作之前,直到我覆盖了由 UsersController 和 Api::V1::UsersController 共享的方法 - 现在似乎一切都指向 UsersController,即使我正在通过 api/v1 访问/用户路线。

我无计可施,试图弄清楚。有什么建议么?谢谢。PS - 随意评论我忽略的任何约定我不应该或其他我可能搞砸的事情:)

0 投票
0 回答
470 浏览

ruby-on-rails-3 - Rails 的acts_as_commentable_with_threading 和嵌套路由

我有以下路线:

正如 AACWT 示例的文档所建议的那样,我尝试使用以下代码为事件添加注释view/comments/_comments.html.erb

其中,由以下人员呈现views/events/show.html.erb

@event相应的控制器操作中分配的位置。

中的create方法comments_controller.rb

尽管此时这可能不正确,因为我已经尝试了许多不同的方法来使其正常工作,并且需要回到我的代码产生问题的地方。问题是它试图加载可评论的路径,在这种情况下是事件,所以它正在尝试的是event_path它应该是什么时候organisation_event_path。我如何将它传递给方法?

我的想法可能是由 procproc.new |organisation, event|或类似的东西引起的,但这就是我卡住的地方。我仍在学习 Rails 以及 ActiveRecord 中的关联是如何工作的。任何指针都将不胜感激,因为它将使我不必对结构进行大量更改并将事件作为自己的资源而不是嵌套,这会产生各种其他问题。

也就是说,理想情况下,我追求实现这一目标的最佳实践方式,所以如果确实需要改变方案,那么我想我必须这样做!

0 投票
2 回答
261 浏览

ruby-on-rails - 为控制器操作添加路由

我正在使用名为 Recommendable 的 David Celis gem 在我的 rails 应用程序中实现一个类似的系统。我已经在控制台中完成了所有工作,但我无法获得正确的路线,并且出现“没有路线匹配 [GET]”/categories/1/posts/1/like”错误。

我的模型中有以下内容:

在我的后控制器中,我有:

在我的路线中,我有:

有人可以指出我的错误吗?我可以让 PUT 工作,但我不知道 GET 错误来自哪里,因为如果用户喜欢某个帖子时发生错误,我会尝试重定向回帖子。先感谢您。

编辑:

在我看来,我有:

0 投票
2 回答
98 浏览

ruby-on-rails - Rails3 具有默认基础的嵌套路由

从 rails guides 中的示例,路线如下:

将导致 URL 如下:

例如,我想为发布者提供 slug 并避免第一个“/publishers”部分将 URL 设置为:

在 Rails 3 中实现这一目标的最干净和最好的方法是什么?

0 投票
1 回答
3126 浏览

ruby-on-rails - 如何在嵌套路由中使用 Friendly_id 中的 slug?

在编辑和创建时,我很难在嵌套路线中制作来自 Friendly_id 的 slug?这些路线看起来很适合表演。

这是我尝试编辑 tester2 时得到的 URL:

我想看到的是:

这是我的代码。

团队.rb

视频.rb

路线.rb

感谢您的帮助。

0 投票
1 回答
3997 浏览

ruby-on-rails - Rails 3.2 简单形式的嵌套路由

我在 object1 和 object2 之间有一个嵌套路由。当我尝试编辑 object2 时出现错误:

配置/路由.rb

查看/object2/_form.html.haml:

如果我更改视图以添加特定的 url,例如:

然后编辑工作但新的没有。

如果我设置 object1_object2s_path (索引路径)而不是 object1_object2_path 作为 url,则两个视图都被渲染,但编辑失败,因为表单指向错误的 url(很明显,这只是我尝试的一部分)。