草庐IT

object-relational-model

全部标签

arrays - Ruby : Choosing between each, 映射、注入(inject)、each_with_index 和 each_with_object

当我多年前开始编写Ruby时,我花了一段时间才理解each之间的区别。和map.当我发现所有其他的时,情况只会变得更糟Enumerable和Array方法。借助官方文档和manyStackOverflowquestions,我慢慢开始明白那些方法做了什么。不过,这是我花了更长时间才理解的内容:我为什么要使用一种或另一种方法?有任何指导方针吗?我希望这个问题不会重复:我对“为什么?”更感兴趣。比“什么?”或“如何?”,我认为它可以帮助Ruby新手。 最佳答案 一个更tl;dr的答案:Howtochoosebetweeneach,map

ruby-on-rails - PGError : ERROR: relation "table_name" does not exist

我正在尝试将一个简单的应用程序推送到heroku并运行:herokurakedb:migrate但是我得到以下错误:rakeaborted!PGError:ERROR:relation"posts"doesnotexist:SELECTa.attname,format_type(a.atttypid,a.atttypmod),d.adsrc,a.attnotnullFROMpg_attributeaLEFTJOINpg_attrdefdONa.attrelid=d.adrelidANDa.attnum=d.adnumWHEREa.attrelid='"posts"'::regclass

ruby-on-rails - Rails - 使用 `rails generate model` 指定不可为空的字段类型

根据rails文档http://guides.rubyonrails.org/migrations.html2.3SupportedTypeModifiers表示应该可以修改字段以允许或禁止列中的NULL,并且可以在终端上这就是我想要出现在迁移文件中的内容classCreateTestModelsfalset.timestampsendendend在终端上,我试过了railsgeneratemodelTestModelnon_nullable:string{null}railsgeneratemodelTestModel'non_nullable:string{null:false}'

ruby-on-rails - ruby rails : Properly creating a model instance that has relation to multiple models

假设我有一个独立的用户模型和服务模型。我还有一个订单模型,用于保存用户为某项服务创建的订单。我想知道如何在Rails中正确创建订单条目。以下是我将如何创建一个订单条目,如果它只引用一个其他模型,比如用户。@order=current_user.orders.build(params[:order])@order.save现在,如果订单涉及多个模型(用户和服务),我该怎么做?假设Order模型具有user_id和service_id属性,并且所有模型对象都正确标记了belongs_to和has_many关系。 最佳答案 @order=

ruby-on-rails - ruby rails : how to migrate changes made on models?

在Rails应用程序中,如何迁移我在模型中所做的更改?例如,我知道如果我使用命令“railsgmodelPersonname:string”创建一个模型,也会创建一个迁移。但是,如果在这一步之后我转到创建的模型“Person”并添加一个新属性,这个新属性是否会自动添加到迁移中以便以后在数据库中持久化?还是我从错误的角度看待这个问题,应该将属性添加到迁移,然后再添加到模型?问候 最佳答案 您不能真正向模型“添加”属性,您可以通过创建迁移文件并运行它来实现——Rails根据数据库中的列来确定模型具有的属性。但是,如果您希望能够通过批量分

ruby-on-rails - 注销前更新 current_user 时收到 "Attempted to update a stale object: User"异常

我在我的用户模型上启用了乐观锁定,以处理我代码库各个部分中可能发生的冲突。但是,我遇到了意外冲突,我不知道如何处理它,因为我不知道是什么原因造成的。我正在使用Devisegem进行身份验证,并且正在使用before_logout方法来重置安全token...classSessionsController:createbefore_filter:before_logout,:only=>:destroydefafter_login#logictosetthesecuritytokenenddefbefore_logoutcurrent_user.update(security_token

ruby-on-rails - ruby rails : Creating child objects

我确定这是一个非常简单的问题,但我只是个新手,所以...我有一个模型Game,它has_many:piles。依次堆放has_many:cards。我可以在创建游戏时填充桩和纸牌,所以我目前的代码看起来像:classGameid,"contents"=>"c_type_#{num}")endendendclassPileid,"value"=>num)endendendclassCard现在一切都很好,但是当ActiveRecord知道game_id是外键并且应该引用时传递"game_id"=>id感觉不对家长游戏。但是,如果我将其关闭,外键最终将无法设置。有更好的方法吗?(作为奖励,

ruby-on-rails - 弃用警告 : Object#returning has been deprecated in favor of Object#tap

如何更改以下方法以使用tap来停止像这样的警告弃用警告:Object#returning已被弃用,取而代之的是Object#tap。(从/Users/millisami/apps/pandahr/config/initializers/fix_active_model_full_message.rb:17的full_messages调用):ActiveModel::Errors.class_evaldo#Removecomplicatedlogicdeffull_messagesreturningfull_messages=[]doself.each_keydo|attr|self[a

ruby-on-rails - rails ActiveAdmin : showing table of a related resource in the same view

当使用RailsActiveAdmingem显示资源时,我想显示另一个关联模型的表格。假设一个酿酒厂有很多:products。现在我想在Winery管理资源的show页面上显示关联的产品。我希望它是一个类似于我在Products资源的index上得到的表格。我让它工作了,但只能通过手动重新创建HTML结构,这很糟糕。是否有更简洁的方法来为关联资源的特定子集创建index表样式View?我有什么,有点糟透了:showtitle::namedo|winery|attributes_tabledorow:namerow(:region){|o|o.region.name}rows:prima

ruby-on-rails - rails : Using form fields that are unassociated with a model in validations

在RubyonRails应用程序中,我尝试使用来自与验证模型无关的字段的信息。这里以模型的一部分为例(整个模型有点大):classScorecard那么如何从模型中访问params呢? 最佳答案 不要让参数偷偷靠近模型。在这种情况下没有Controller的意义。相反,从Railscasts查看这一集它讨论了不进入数据库但仍可用于验证的虚拟属性。虚拟属性不需要相应的模型属性。定义类的局部属性,例如保存状态的@no_fairways。classScoreCard现在在你的表单中,你可以写: