Tag: 嵌套

Ruby on Rails:在while循环中嵌套每个循环会产生错误

当我在rails控制台中执行以下代码时出现语法错误:“语法错误,意外$ end,期望keyword_end” range = 2 my_array = Array.new(range) a = [1] i = 0 while i < range do a.each do |b| puts "test" end i += 1 end 有谁知道我做错了什么? 奇怪的是,代码在ruby文件中的我的服务器上工作。 非常感谢! tuxware

accepts_nested_attributes_for使表单字段不显示

当我使用accepts_nested_attributes_for ,相应的字段不再显示在我的视图中。 class Survey < ActiveRecord::Base has_many :questions accepts_nested_attributes_for :questions end class Question < ActiveRecord::Base belongs_to :survey end 然后在我看来: 如果我删除accepts_nested_attributes_for然后text_area显示,但如果我保留它…没有任何东西得到渲染。 我正在运行Rails 3.0.3

(Ruby,Rails)CRUD在单个页面上嵌套了超过4级的模型……?

尽可能多的惊人信息,它似乎往往只是我的疯狂要求。 也就是说,我正在寻找一种机制来处理单个页面上的多个嵌套模型。 现在,我已经看到所有的video和post(不是真的,但幽默我)嵌套两个模型(Railscasts等)。 但是,我需要处理嵌套4深的模型,同时使用Javascript来保持页面清洁。 基本上我有网站 – >建筑物 – >控制器 – >测量,并希望在一个页面上管理(CRUD)一个完整的网站。 我确信这是可能的 ,但我还没有看到一个相当干净的方法,我可以把它包裹起来。 如果有人有任何意见,我都是耳朵(或视情况而定)。 提前致谢。

Rails在新控制器中组合RESTful方法

我有一个users创建projects的rails应用程序。 目前这些是嵌套的,并作为单独的操作完成( user注册,然后从project仪表板创建一个新project )。 为了改善转化(以及跟踪来自adwords和facebook的转化),我想创建一个名为getting_started的新视图, user可以从一个视图中一步注册并创建project 。 在最佳实践方面,我应该为此创建一个新的控制器,而不是仅仅在users创建新视图吗?

Ruby on Rails:嵌套属性,belongs_to关系

我有一个具有当前位置字段(城市和国家/地区)的用户实体。 为了保存这些信息,我创建了一个名为Location的实体has_many Users。 我不完全确定我是否应该在用户模型中添加“has_one”或“belongs_to”,但是如果我想要它拥有该位置的外键我应该放入“belongs_to”。 我还希望能够在编辑用户时编辑用户的当前位置。 所以我使用的是嵌套属性。 但是当我编辑用户时,我每次都会添加一个新的位置,而不会将其与已编辑的用户相关联。 你能帮我吗? 我的代码如下: #User Model class User ‘Location’ accepts_nested_attributes_for :current_location end #Location Model class Location :edit end end

通过关联构建和创建相关对象:如何设置嵌套模型的外键?

我正在使用Ruby on Rails 3.1.0。 我试图保存一个嵌套模型,该模型具有用于存储父模型的外键的属性。 在父模型的创建时,我想将该属性值设置为父模型id值。 在我的模型中,我有: class Article :article_category_relationships # Accept nested model attributes accepts_nested_attributes_for :articles_category_relationships end class Category :article_category_relationships end # The join model: class ArticleCategoryRelationship < ActiveRecord::Base # Table columns are: # – article_id # – category_id # – user_id # – … belongs_to :category belongs_to :article end 在我看来,我有以下几点: … 在我的控制器中,我有: def […]

使用单个标识符RESTful嵌套资源路由

在我的Rails应用程序中,我在两个实体之间有一个相当标准的has_many关系。 Foo有零个或多个Bars ; 一个Bar恰好属于一个Foo 。 Foo和Bar都由单个整数ID值标识。 这些值在所有各自的实例中都是唯一的。 Bar的存在依赖于Foo:拥有没有Foo的Bar是没有意义的。 有两种方法可以RESTful地引用这些类的实例。 给定Foo.id为“100”且Bar.id为“200”: 通过他们自己的“顶级”URL路由引用每个Foo和Bar,如下所示: /富/ 100 /棒/ 200 参考栏通过其Foo实例作为嵌套资源: /富/ 100 /富/ 100 /酒吧/ 200 我喜欢#2中的嵌套路由,因为它更接近地表示实体之间的实际依赖关系。 然而,它似乎涉及很多额外的工作,收益很少。 假设我知道一个特定的酒吧,我不需要被告知特定的Foo; 我可以从Bar本身那里得到它。 事实上,我可能应该在任何地方validation路由Foo(这样你就不能做/ foo / 150 / bar / 200,假设Bar 200没有分配给Foo 150)。 最终,我看不出这给我带来了什么。 那么,是否有任何其他论据支持或反对这两种路由方案? 澄清点 我主要关注特定Bars的RESTful更新/显示/删除。 为了获得特定Foo的Bar列表(通常是Rails中的“索引”动作),有一个嵌套路由,如/ foo / 100 / bar,这是完全合理的。 这条路线上的页面可以很容易地链接到/ bar / x和/ foo / 100 / bar […]

如何在Ruby on Rails 3中以嵌套forms调用对象上的方法?

我有这两个型号 class Invoice < ActiveRecord::Base has_many :items accepts_nested_attributes_for :items … end class Item < ActiveRecord::Base belongs_to :invoice def total price * quantity end … end 这个嵌套(!)forms发布到两个模型: Add an Invoice Items 如何对表单中的项目进行计算? 在我的Items模型中,我有这个方法: def total price * quantity end 但是,在forms上我无法使用f.total 。 我一直收到这个错误: undefined method `total’ for # 我在这里想念的是什么?

将Rails多态性用于嵌套注释

我需要在Rails 3应用程序中构建一个嵌套的注释系统,该应用程序允许对许多模型(文章,post等)进行评论,并且正在讨论按照本文的内容编写我自己的解决方案。 有一些gem可供使用,例如使用awesome_nested_set的 acts_as_commentable_with_threading ,但是他们对我的需求感到臃肿。 我需要能够为多个模型添加注释 我需要能够无限深入地为评论添加评论 我需要能够有效地检索post,文章等的所有后代 我需要能够在适当的嵌套中有效地呈现注释 我的问题是,如果我能够解决我可能遇到的潜在问题。 我想避免走一条路只是为了走向死胡同。 我最初的担忧涉及有效地查询儿童。 比如说,获取一篇文章后代评论列表(儿童和儿童的孩子)。 有人对此有所了解吗? 谢谢。

Rails嵌套属性关联validation失败

我有一个Rails模型的嵌套属性,并且关联validation由于某种原因失败。 我没有使用accepts_nested_attributes_for,但我正在做一些非常相似的事情。 class Project “name”, :value=>val) end end end class ProjectAttribute :project_id validates_presence_of :project_id, :unless => lambda {|attribute| attribute.project.try(:valid?)} validates_associated :project end 这是一个人为的例子,但与我试图做的类似。 我已经看了一下accepts_nested_attributes_for做了什么,它使用了构建方法,我认为它会将构建的属性与项目相关联。 我还查看了accepts_nested_attributes_for子关联validation失败 ,它给了我validates_presence_of :unless=>valid? 有关如何使其工作的任何想法?