草庐IT

数据模型

全部标签

ruby-on-rails - Rails 数据/基准变形问题

在我的Rails3.2.6应用程序中,我有一个模型表示有关小部件的数据集合。在我看来,此类的正确名称是WidgetData,复数形式,因为每个小部件有不止一项数据。如果我要求Rails为这个类生成一个表单:=form_for@widget_datado|f|...我得到一个错误ActionView::Template::Error(undefinedmethod'widget_datum_path'...。大概这是因为Rails数据/数据变形规则。我不确定如何最好地解决这个问题:我可以让Rails指示我的模型实际上应该是WidgetDatum。或者我可以以某种方式在这种特殊情况下禁用变

ruby - 创建新数据库时 DataMapper SQLite 错误

我是Sinatra的新手,我正在尝试使用SQLite3和Datamapper创建一个数据库。我安装了gem和适配器,然后尝试在文件中执行此代码:#configrequire'sinatra'require'sinatra/contrib'ifdevelopment?require'data_mapper'DataMapper::setup(:default,"sqlite3://#{Dir.pwd}/recall.db")DataMapper.finalize.auto_upgrade!当我执行文件时,命令行给了我这个错误:C:/Ruby193/lib/ruby/site_ruby/1

ruby - 如何设置 Sequel 模型中的默认值?

给出下面的代码,如何为模型定义默认值。(假设:name的默认值应该是“Thing”)。require'pp'require'sequel'DB=Sequel.sqliteDB.create_table:itemsdoprimary_key:idString:nameenditems=DB[:items]classItem'foobar'Item.createppItem.all#=>#>>[#"foobar",:id=>1}>,#>>#nil,:id=>2}>]所以,我想将第二个创建的项目设置为#"Thing",:id=>2}>而不是:name=>nil。

ruby - 当我在我的模型上运行 RSpec 时,为什么会出现 "strip"和 "downcase"的未定义方法错误?

我在模型上运行RSpec测试并收到字符串方法的错误,例如:“index”、“downcase”和“strip”。知道为什么会这样吗?我该如何解决? 最佳答案 如果您得到“未定义的方法”,那么您正在操作的对象可能不是字符串。在调用.strip等之前尝试打印出.class的结果,然后查看您正在使用的对象类型。通常返回字符串的函数可能会在错误时返回非字符串(如nil),您可能会无意中对类似的东西进行操作。 关于ruby-当我在我的模型上运行RSpec时,为什么会出现"strip"和"downc

ruby-on-rails - 有没有办法拥有多个 seeds.rb 文件?任何类型的 'versioning' 用于种子数据?

我们需要为一些新添加的表添加更多种子数据到我们的Rails项目的“版本100”。但是,如果我们简单地将它添加到seeds.rb中并重新运行rakedb:seed命令,它当然会重新添加原始种子数据,复制它。因此,如果您已经将种子数据添加到seeds.rb中,例如,TableOne...我们如何在开发的后期阶段为TableTwo和TableThree增量添加种子数据?我希望我可以简单地创建一个新的seeds_two.rb文件并运行rakedb:seeds_two但这给出了一个错误不知道如何构建任务“db:seeds_two”所以看起来只能使用“seeds.rb”。人们如何维护对种子数据的增

ruby-on-rails - 使用模型属性调用的 Brakeman 不安全反射方法常量化

在我的Rails应用程序中,我收到来自brakeman的以下安全警告。使用模型属性调用的不安全反射方法常量化。这是我的代码正在执行的操作。chart_type=Chart.where(id:chart_id,).pluck(:type).firstbeginChartPresenter.new(chart_type.camelize.constantize.find(chart_id))rescueraise"Unabletofindthechartpresenter"end根据我的研究,我还没有找到任何具体的解决方案。我听说你可以创建一个白名单,但我不确定brakeman在寻找什么。

ruby-on-rails - 将配置文件模型的某些属性设置为对其他用户公开(可见)或私有(private)(不可见)的最佳方法是什么?

我有一个Profile模型,它有很多属性,比如电子邮件、图像、年龄、地址等。最终用户可以将某些属性设为私有(private),以便其他用户无法查看。我通过向表private_attr添加一列并将其序列化以存储哈希来解决这个问题:-{email:true,address:true,age:false}这里的属性作为具有值true的键被认为是私有(private)的,不会向除这些属性所属的用户以外的用户显示。我想知道这是解决这个问题的最好方法,还是有其他方法。提前致谢。 最佳答案 我认为您可以只序列化用户希望在数组中私有(private

ruby-on-rails - Rails - 双向 "friendship"模型(续)

这是这个问题的延续:OriginalQuestion(SO)这个问题的答案涉及以下一组模型:classUser:friendships#...endclassFriendship'User',:foreign_key=>'friend_id'end如果说,我有一个用户并且我想获得他或她的id是友谊模型上的:user_idFK的所有“友谊”,这很好用。但是,当我运行类似的东西时@user.friendships.friends我希望它返回该用户是友谊中的:user或:friend的所有用户记录-因此,换句话说,返回该用户参与的所有友谊。希望以上内容有意义。我对Rails还是很陌生,希望有

ruby-on-rails - 在 Rails 中访问模型属性

所以基本上我有一个Controller。像这样的defshow@user=User.find[:params[id]]#codetoshowinaviewend用户拥有姓名、地​​址、性别等属性。如何在模型中访问这些属性?例如,我可以重载模型访问器的名称并将其替换为我自己的值或将某些内容连接到它。就像在这个方法的show.html.erbView中一样,我可能想将用户名与“先生”连接起来。或“夫人”取决于性别?怎么可能? 最佳答案 我会犹豫是否要覆盖属性,而是像这样添加到模型中:deftitled_name"#{title}#{na

ruby-on-rails - 用户的 Rails 模型结构

我是Rails新手,正在开发我的第二个Rails应用程序。该应用将为用户分配不同的角色,但有些用户将拥有多个角色。网站的每个用户都是艺术家。一些用户将担任版主的角色。我将如何构建它?在我使用过的一些PHP应用程序中,只有一个用户,然后是is_admin等的数据库列。但是我查看了rails应用程序的源代码,并看到了用户和管理员等单独的模型,尽管我'不知道为什么。那么,我是否应该有一个具有角色属性的用户模型,可以是主持人,然后在我的View、路线等中将用户称为“艺术家”?或者我应该有一个User模型,一个从它继承的Moderator模型,以及一个属于User的Artist模型?我真的很困惑