问题标签 [nested-resources]
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.
ruby-on-rails - rails : 嵌套资源中的路由
我使用嵌套资源
与
我/user/id
改为/username
但是,如何/users/username/posts
更改username/posts
?
ruby-on-rails - 嵌套资源的 ActiveRecord 构建
(注意:这里的源代码https://github.com/cthielen/dss-evote)
我有一个简单的投票应用程序。调查是要投票的一组问题,选票是每个用户的偏好实例,而选票 has_many 偏好对于每个用户都是唯一的。这是建模:
routes.rb 只有这个:resources :surveys do resources :ballots end
/surveys/1 似乎有效,甚至 /surveys/1/ballots。/surveys/1/ballots/new 是我遇到问题的地方:
在 ballots_controller.rb 中:
(对应视图)
导致错误:
现在,似乎正在形成一个数组而不是类的正确实例,但我不知道如何正确解决这个问题。
编辑:我应该提到我试图建立@ballot.preferences 的原因是偏好代表一个人的答案,并且偏好的长度可能会因调查而异。因此,如果调查有六个问题,@ballot.survey.questions.length 将为 6,我需要创建 6 个空白的@ballot.preferences,然后将由 form_for 表示,并希望使用 RESTful Create 正确保存。
提前感谢您提供的任何帮助!
ruby-on-rails - Rails 3嵌套资源编辑/更新方法 - 路由错误
我需要一些有关嵌套资源操作的帮助。我有三个嵌套资源:作业、问题和答案。我目前只是试图让编辑/更新方法适用于问题控制器。关系是这样的:Jobs has_many questions 和 Questions 属于 Jobs。
我正在对问题使用编辑操作,但出现错误:
我不知道为什么。
我目前将此代码作为我的问题控制器中的编辑和更新操作:
楷模:
路线:
我不明白的事情是:a)为什么它会将我重定向到问题索引路径,当我没有将它重定向到那里时,b)它说这不是一个有效的路线,但如果我刷新那个确切页面正确加载的 URL。
我尝试了多种选择,但我无法找出解决方案。
谢谢您的帮助。如果您需要更多信息,请告诉我。
ps 这是我的 rake 路线:https ://gist.github.com/1077134
ruby-on-rails - 带有嵌套资源的 Rails form_for 循环
我有三个资源:工作、问题和答案。
这些关系是: 约伯有很多问题;问题有很多答案。
我在 Jobs 表单视图上创建了一个嵌套表单,其中包括创建工作和问题。这些都将在管理墙后面,但我希望用户通过答案表单视图上的表单来回答问题(而不是在墙后面)。
我面临的问题是我想为答案表单字段创建一个循环。
由于这是一个循环并且会有超过 1 个答案字段,因此我希望问题能够动态呈现为答案表单标签。这将反映路径,因此jobs/1/questions/1/answers/new(编辑:这应该是jobs/1/answers/new
)将显示 ajob_id
为 1 的所有问题。
我该怎么做呢?我正在考虑在答案控制器中使用这样的新动作(我很肯定这是非常错误的):
这是我目前的答案表格:
如果您需要更多信息,请告诉我,感谢您的帮助!
ruby-on-rails - 在其他控制器中渲染嵌套表单部分
我有三个资源:工作、问题和答案。这些关系是: 约伯有很多问题;问题有很多答案;约伯有很多答案。
我已经在作业/新视图上嵌套了所有表单。
现在,该应用程序的目标是让管理员(我们)在管理员墙后面创建工作和问题。一旦我们这样做了,我们希望列出为每个特定工作创建的问题,并让用户回答问题。这需要将答案表单放在不在管理墙后面的另一个视图(相同或不同的控制器)上。
由于表单都嵌套在作业/新视图中,我为答案表单创建了一个部分:
问题部分是:
答案部分是:
我的想法是我创建了一个部分,我将能够在应用程序中的任何地方引用它,但我一直在尝试一切,我似乎无法让它工作。
我基本上有这个设置的两个问题:
1)如何在另一个视图上自行呈现部分答案(正确的代码是什么)?2) 创建此视图的最佳位置在哪里?我最初的想法是另一个工作视图,因为它将嵌套在父资源下,但我不完全确定这是否有效。
谢谢,如果您需要更多信息或澄清,请告诉我。
ruby-on-rails-3 - 在不更改资源名称的情况下更改 URL
我正在为兔农建立一个网站(让我们假装)。这个人密切关注着他的兔子,并希望它们都被分类。所以我为他构建了一个 RabbitCategoriesController,并将这一行添加到我的 routes.rb
URL 显示为rabbit_categories
,rabbit_categoriew/new
等。
如果我希望 URL 看起来像这样rabits/categories
rabits/categories/new
怎么办?这不是嵌套资源,我只想更改 URL 的外观。
当然,如果资源被称为“类别”,我可以这样做
有什么办法可以写,但告诉它使用 RabbitCategoriesController 而不是 Rabbits::CategoriesController?
ruby-on-rails - 公开嵌套路由的特定操作
使用此作为上下文示例: 发表 has_many 评论 Comment belongs_to post
我有一条看起来像这样的路线:
如何创建公开评论#index 的路由?
一个示例用例是......我想在页面上列出系统中的所有评论。本质上使用评论资源,就好像当用户点击/评论时它没有嵌套一样
谢谢你!
ruby-on-rails - 如何在嵌套资源的控制器中为 show 操作构建 Active Recond 查询?
我有两个模型:书籍和章节,其中书籍有很多章节。我已经设置了如下路线:
和章节控制器的代表团,动作表演工作正常。
我现在的问题是通过本书检索显示控制器中的那一章。如果查询的标识符不是主键,如何做到这一点?
谢谢!
ruby-on-rails - 在单个 Rails 资源上组合浅层和非浅层路由
假设我有一个Magazine
模型和Ad
模型,这样Magazine :has_many => :ads
. 我已将嵌套资源路由设置如下:
我的目标是能够访问由 Rails 资源创建的默认 CRUD 路由,以及嵌套和浅层的搜索路由。我希望用户能够在给定杂志的上下文中限制他的搜索,或者搜索所有广告而不考虑父杂志,因为有些广告没有父杂志。换句话说,我希望能够:
我担心的是视图中的路径变量依赖于new_magazine_ad_path(@magazine)
. 在遇到没有任何实例来引导它的助手时,不会访问像/ads/index
(应该包含创建新广告的链接)这样的路线吗?new_magazine_ad_path(@magazine)
@magazine
PS:通常,我会自己尝试所有这些,看看有什么效果,但我现在被上述设置卡住了——我只能进行编辑、删除、显示和更新浅层路线:
并且没有新的或索引路线:
更新
所以 Shreyas 提议创建两个控制器,一个处理嵌套的 Ad,一个处理浅层的 Ad。这是有道理的,但它让我复制所有视图代码只是为了将路径助手从 更改magazine_ad_path(@magazine)
为ad_path
. 关于处理视图更改的 DRY'er 方法的任何想法?所有其他视图代码都是相同的。
ruby-on-rails - Rails 3.1 has_one 嵌套资源:路由不生成“所有”路径
我有一个 has_one 关系:
以及它们的以下嵌套路由:
运行rake routes
给出:
为什么 show 动作没有 name_helper?
我可以通过以下方式覆盖问题:
给出路线:
但我们现在都不是处理它的正确方法..
有什么建议么?
--
(已编辑)
确实有效,但为什么呢?rake routes
...在我的外壳上执行时没有出现...