ActiveRecord::ReadOnlyRecord(ActiveRecord::ReadOnlyRecord):在更新期间

我想我还是个新手,但我再次需要你的帮助。当我在habtm协会工作时,我遇到了问题。我有一个表格,可以输入有关计算机的信息。habtm是机器和操作系统之间的关联 class Machine < ActiveRecord::Base .... has_and_belongs_to_many :operatingsystems, :join_table => "machines_operatingsystems", :readonly => false ...

Activerecord 如何使用';在(1,2,3)和#x27;和芬德尔?

我需要从数据库中找到几个学生,他们的主键用逗号分隔 通常情况下,使用SQL时会出现以下情况: $cleanedStudentIdStringList = "1,2,3,4"; SELECT * FROM Student WHERE id IN ($cleanedStudentIdStringList) Yii的ActiveRecord似乎在结果SQL语句中的绑定参数周围插入了一个引号,这会导致在使用参数绑定时查询失败 $students = Student::model()->findA

ActiveRecord STI:如何突破父类';默认范围

在轨道3.1 RC6上,给定 class Animal < ActiveRecord::Base default_scope where(legs: 4) end 如何完全覆盖父类的默认范围 我也尝试过以下方法,但都不管用: default_scope{ unscoped.where legs: 2 } default_scope with_exclusive_scope{ legs: 2 } 我深入研究了Rails的源代码,提出了一个在Rails 3.1下工作的解决方案(使用ac

Activerecord rails迁移悄悄失败

除了成功地进行了Rails迁移外,我从未获得过任何东西,因此这一次对我来说尤其令人困惑。我有一个我刚刚编写的迁移,它相当简单,但是当我尝试运行它时(第一次,或者在回滚并再次尝试之后),控制台在几秒钟内没有输出,作业结束,我的数据库没有发生任何更改,除了检查rake DB:migrate:status将显示迁移已经运行(或者,它认为已经运行) 迁移代码如下: class AddNotesToCases < ActiveRecord::Migration def up ad

Activerecord Yii-活跃记录关系有很多问题

我是Yii的新手,在建立AR关系方面有困难。 我与Rails活动记录有过接触,但无法在Yii中设置简单的关系 典型的例子是两个模型,业务和业务描述,其中一个业务可以有N个业务描述 Im使用MySQL和MyIsam引擎,并在BusinessDescription中声明了一个名为business_id的FK 业务关系: public function relations() { return array( 'businessdescription' =>

Activerecord 如何加载附件:1+;N无法使用ActiveStorage附件时出现问题

我有一个为JSON API响应序列化的产品列表 为此,我还需要来自ActiveStorage附件的imageUrl。 我被1+N问题绊倒了 如您所见,我已经尝试包含任何类型的“includes” 我已经添加了带有照片的“” 如何解决此1+N问题? 型号: class Product ActiveStorage::Current.host = ENV['APPLICATION_URL'] include Rails.application.routes.url_helpers has

如何更新Rails数据库中的累积字段(使用ActiveRecord或Mongoid)?

我想更新数据库表中必须具有累积值的字段。所以基本上我需要找到字段的当前值,并使用新的数字更新它 我的第一次尝试(在Mongoid中)是: 有没有一种简单的方法比一个查询进行读取,然后求和,再进行另一个查询进行写入更简单的方法?MongoDB为这种情况提供了特殊的原子更新操作支持——请查看中的$inc修饰符。您在普通mongo控制台中的示例如下: db.landlords.update( { name:"Lorem" }, { $inc: { violations : 10 } } ); Lan

如何使用ActiveRecord回调在保存前分配字段值?

我想知道如何使用回调为数据库字段赋值,这些字段是在虚拟属性字段之外处理的。示例: field :houseno, :type => String field :street, :type => String attr_accessor :address 我的尝试似乎没有成功。以下是我所拥有的: before_validation :assign_fields def assign_fields if @address @houseno

RubyonRails购物车错误“;ActiveRecord“联合收藏代理”;

我目前正在尝试用RubyonRails5构建电子商务站点。我已经建立了一个商店页面和按钮,将产品添加到购物车中,但是购物车显示“#”,而不是所选的产品描述或产品 这是选择项目后的外观 在视图文件中,不应打印对象,而应打印对象.name或对象.description PS:总是建议在询问堆栈溢出问题时发布代码片段。这将使我们有机会查看您的代码并指出任何特定的修改

Activerecord Atlassian Confluence与Active Directory身份验证

我有一个关于Confluence和Active Directory集成的问题。我们已成功集成,用户现在已根据AD进行身份验证。但问题是,当用户输入wrond windows凭据,而不是给出“无效用户名/密码”之类的消息时,它会引发异常。有人看到过这个问题吗?我们还联系了Confluence的支持人员,但我的解决方案是关闭AD身份验证并使用DB身份验证 org.springframework.transaction.UnexpectedRollbackException: Transaction

在Sinatra而不是Rails上对ActiveRecord进行版本控制?

我只是快速浏览了一下可用的解决方案,主要的两个解决方案对我不起作用: 自3个月以来未积极维护书面记录,并与Rails 3绑定 维斯塔尔版本自2年后不再维护 你能提出一个解决方案吗?我应该执行我的吗?问题是我的最后期限很紧 感谢我自己的快速实现,具有多态关联的模型和将关联对象封送到其中的文本字段。感谢我自己的快速实现,具有多态关联的模型和将关联对象封送到其中的文本字段

Activerecord 在Yii中一起在控制器中保存和更新

我的数据库中有两个表,users和profile。配置文件将用户id作为主键。每个用户只能有一个配置文件。当我上传一个图像文件时,它的名称存储在具有该用户id的配置文件表中。当配置文件表中有其他字段要更新时,我首先检查是否已经有具有该用户id的记录。在我的配置文件模型中,我已写入 public function checkForSaveOrUpdate() { return self::model()->findByAttributes(array('user_id'=>Yi

ActiveRecord 4无法检索;选择为";领域

好吧,问这个我觉得很愚蠢,但这让我发疯,我想不出来。文档说我应该能够在Rails/ActiveRecord查询中使用select AS。因此: d = Dvd.where(id: 1).select("title AS my_title") 是一个有效的查询,如果我对它执行到\u sql,它将生成预期的sql: SELECT title AS my_title FROM `dvd` WHERE `dvd`.`id` = 1 但是,d.my_title将给出一个错误: NoMethodErr

Activerecord Rails4复杂嵌套有“许多:通过,需要帮助才能找到”;轨道;

我的目标是让用户能够提名客人来谈论某个话题,但复杂的是,他们(或用户)可以提供许多“链接”,在提名客人时支持这种选择 因此,我的表格,以其最简单的形式,如下所示: create_table "topics", force: true do |t| t.string "name" end create_table "guests", force: true do |t| t.string "name" end create_table "topic_guests", for

Activerecord 如何将保留在DB中的时区设置为EST,而不破坏Rails中创建的\u at/更新的\u at

这是Rails中通常设置时区的方式 (application.rb) 当我这么做的时候,发生的是: 我可以在数据库中看到created_at/updated_at,但当我获取模型对象并调用“created_at”属性获取时间时,它是空的 例如: 在我的数据库中,我有: <Post id: 4, author: "Anonymous", title: "Test", text: "Test Title", created_at: "2014-08-26 21:00:25",

Activerecord yii2中的复杂子查询

有人能用yii2构建这个子查询吗 select name, crt_by, (select name from tbl_employee_master where tbl_employee_master.contact = (select username from tbl_user where tbl_user.id = tbl_dealer_master.crt_by)) as

Activerecord 生成跨天的测试数据

我想让ActiveRecord对象对这段时间运行测试 例如,我希望在过去的x天内发布x个帖子,以便计算昨天发布的帖子的平均评分。这样我就知道它不包括前几天发布的测试 我是否需要在数据库中植入种子才能执行此操作,或者我正在编写糟糕的测试?:) 以下面的简化示例为例,您的posts表有rating列和在列创建的 您可以“种子化”/设置您的测试来模拟这一点,而不需要为此实际为您的开发数据库种子化 let(:post_one) { Post.create(rating: 5, created_at: T

Activerecord Yii2模型公共属性

我有一个用户模型,其中有些属性是公共的,有些属性是db列属性 假设模型有N个公共属性(例如Email和姓氏)和列属性(例如Salt、confirmation_token) 我想循环查看模型中的所有属性,包括公共属性和db列属性假设您的用户模型是ActiveRecord,您可以创建这样的函数来检索公共属性和从数据库检索的属性的组合 public function getAllAttributes() { return array_merge( parent::attribu

Rails5 ActiveRecord错误:类型错误:can';t引号数组

我正在检查是否有预先存在的更新 该字段正在接收\u account\u id,看起来像 ["1", "3", "4"] 我的问题是 if Update.where("band_id = ? and fan_id = ? and receiving_account_id = ? and response = ?", "#{@remove_member.band_id}", "#{@remove_member.fan_id}", "#{[@remove_member.receiving_accou

如何排除私有方法';通过反思';调用ActiveRecord::关联?

我在rails 5.2中遇到过几次这个错误(在此之前没有注意到或捕捉到)。我找不到关于SO或rails文档的任何好信息。我终于明白了…所以,我想我会在这里发布一个Q/a,让其他人找到 private method `through_reflection' called for #<ActiveRecord::Associations::HasManyThroughAssociation:0x00007ff1d4511878> 调用了私有方法“通过反射”# 这不是一个非常描述性的错误

如何在运行时基于ActiveRecord动态创建类?(红宝石)

我正在试验元编程,希望动态创建一个继承自ActiveRecord的类 例如,我可以这样做: Object.const_set("Orders", Class.new { def blah() 42 end }) 所以现在我可以: o = Orders.new o.blah #<== 42 o=Orders.new o、 废话试着这样做: SomeClass = Class.new(ActiveRecord::Base) do .... #some behaviour end

Activerecord 制表符赢得';ExtJS中的t开关

我正在运行ExtJS 4.1,下面定义了一个选项卡开启器: var tabs = (typeof tabs != 'undefined') ? tabs : this.getMainTabs(); tabs = (typeof tabs == 'string') ? Ext.getCmp(tabs) : tabs; var have_record = (typeof record != 'undefined' && record != ''); var id = have_

分叉后ActiveRecord断开Postgres连接的原因是什么?

我在Rails4.2项目中有一个Rake任务,它使用fork。我的问题是,在分叉进程完成后(即进程。等待之后),当我再次尝试访问数据库时,会出现以下Postgres错误: PG::ConnectionBad: PQconsumeInput() server closed the connection unexpectedly 起初,我怀疑ActiveRecord会在分叉过程完成后自动关闭连接。但是在阅读了AR的代码之后,似乎分叉进程应该使用它们自己的连接: 在祖先进程中建立的连接必须具有 随后

Activerecord 如何使用亚音速3生成数据库类文件?

我已经使用亚音速(ActiveRecord)好几年了。我一直在等待,直到3.0中的一些错误得到修复,然后才下载最新版本,并将我的几个使用亚音速的网站升级到3.0。我目前正在这些网站上使用2.2。我正在一个新网站上工作,希望在返回并将现有网站更新为3.0之前,使用3.0掌握新的更新 然而,我被卡住了,旧的亚音速网站上的论坛和有用的帮助文档似乎都变了,我找不到任何东西来回答我的基本问题 如何使用亚音速3生成数据库类文件? 在2.x版中,我使用了与VisualStudio集成的子命令工具,只需单击菜单

Activerecord 在Yii中重新排列活动记录元素

我使用的CDbCriteria具有自己的条件,带有&order子句。但是,我想给数组中的元素指定的顺序太复杂,无法在order子句中指定 我想到的解决方案包括使用如下定义的标准获取活动记录 $theModelsINeed = MyModel::model()->findAll($criteria); 然后重新排列php代码中的顺序。我该怎么做?我的意思是,我知道如何迭代它的元素,但我不知道是否有可能实际更改它们 我一直在寻找有关填充活动记录的链接,但它似乎相当复杂,也许有人可以提供一些

Activerecord 在UsersController#create中,User.new(params[:User])返回一个空用户(params看起来不错)

我是Rails 3.1的新手。我只在我的产品环境和注册表单中遇到了一个问题(实际上,更多的是关于控制器) 下面是User中的代码 class UsersController < ApplicationController [...] def create @user = User.new(params[:user]) logger.info "value of login in param : #{params[:user][:login]}" #-> log the a

Activerecord Rails 3自动将数据插入连接表

我原以为,如果在模型文件中正确设置了表关系,ActiveRecord将负责更新数据并将其插入连接表 不是吗 例如,我有一个dvd.rb型号,看起来像这样: has_and_belongs_to_many :dvd_producer 连接表相应地命名为dvd\u producers\u dvds(我知道,这个名字很傻,但这正是ActiveRecord所期望的) 基本上,当我通过以下方式在dvd\u producers表中插入新制作人时: DvdProducer.create(producer

activerecord中的深度嵌套联接

我试图在我的整个网站上优化我的查询 我有3个模特,照片,人物,外表 这张照片有很多表象,很多人通过表象 表中只有一个人的id,照片的id 现在,如果我要搜索一个“人”,并且我想急切地加载他们的外貌和照片,我会这样做: Person.joins(:appearances => :photo).limit(5) 现在,我不确定这是否是理想的,但假设我的人有属于照片的外表,而照片又有外表和其他人。我甚至不知道在香草SQL中是否或如何做到这一点,但我只是好奇这是否可能 Person.joi

Activerecord 更新或创建_by

更新或创建新记录的好方法是什么 我已经试过了,在Rails控制台中工作正常,当应用程序运行时,它不会。 有更好的方法吗 landing = Landing.find_or_initialize_by(pos: k, project_id: project_id) landing.update_attributes(pos: k, project_id: project_id) 谢谢初始化不会持久化到数据库,但创建会持久化到数据库。将代码行更改为: landing = Landing.find_

Activerecord Yii框架:条件下的模型关系

我有一个用户、个人资料、教师和学生模型。数据库如下所示: 在我的教师和学生模型的关系功能中,我希望: 'profile' => array(self::HAS_ONE, 'Profile', 'user_id', 'condition' => 'profile.user_id = 'teacher.user_id'), 基本上,我想写一些东西,输出与以下SQL查询相同的结果: SELECT * FROM teacher, profile WHERE teacher.user_id

Activerecord 在padrino Rakefile上设置resque池抛出错误

我使用super coolResque设置了一个Padrino总线应用程序来处理后台进程,并使用ResqueBus来发布/订阅事件 ResqueBus安装程序创建一个resque队列和一个工作队列,供其使用。这里的一切都很好。现在,由于resquebus只为一个队列创建一个worker,而且我的总线应用程序中的进程可能会失控,因为许多事件将被发布和订阅。因此,每个应用程序队列只有一个工作者似乎效率低下。因此,考虑集成resque池gem来处理worker进程 我已经遵循了resque pool

Activerecord 相关模型的即时加载(嵌套集)

在Yii1中,我可以使用即时加载加载父级(嵌套集)。就是这样, class Category extends CActiveRecord { public function relations() { return array( 'parent' => array(self::HAS_ONE, 'Category', '', 'on' => '(t.left between parent.left and parent.right

Activerecord yii2活动记录不在状态

我正在做yii2。我正在使用活动记录搜索参考号。查询如下 $q = isset($_GET['q']) ? $_GET['q'] : ''; if(empty($q)) exit; $ser = Survey::find()->where("ref_no like '%$q%'")->andWhere(['status'=>1])->asArray()->all(); return json_encode($ser); 上述查询将获得调查

Activerecord 如何在active record where方法中选择存储为哈希值的列?

我有一个名为data的表列,其值存储为:date1:04/05/2015,:date2:05/12/2015 我得到了一个活动记录关系类,在where方法中,我想取data[:date1]的值,data[:date2]的值,像这样 怎么做?有什么想法吗 您能否更具体地显示您的查询及其返回的结果?data字段是否在数组中存储哈希值?i、 e.[data[:date1],data[:date2]]如果调用.class,结果实际上是散列吗?如果需要帮助,则需要更加具体:)结果位于ActiveRecor

Activerecord 处理yii2中的N+1查询

有人知道Yii的ActiveRecord上是否有一个功能可以帮助我们防止N+1查询吗 在下面的示例中,我们需要从人员获取文档,并在视图中显示人员的姓名及其文档列表。如果我使用$model->findAll[…];类似下面的代码: <?php foreach( $people as $person ): ?> <li><?= $person->name</li> <li> <ul> <?php

Activerecord “0”附近的语法不正确:EXEC sp_executesql N'SELECT[users].*从[users]偏移量0行获取下一个仅@0行,N'@0 int',@0=1

我正在使用rails 5.1.6和activerecord sqlserver适配器5.1.6,tiny_tds 2.1.2。和SQL Server 2017 数据库访问正常 SQL 1.1ms使用[MIST_测试] 用户加载1.5ms EXEC sp_executesql N'从中选择[users].* [用户]偏移量0行仅取下@0行,@0 int',@0=1 [[LIMIT,nil]] ActiveRecord::StatementInvalid:TinyTds::错误:附近的语法不正确 “

Activerecord Ruby错误:未定义的局部变量或方法'c';

我正在开发一个ruby应用程序,但遇到了一个奇怪的错误,我认为这可能是由activerecord/activemodel引起的。错误如下: Error on PaymentTransaction::Normal: undefined local variable or method `c' for #<Deposits::Mobitglobal:0x0055995b000b78> /home/deploy/peatio/vendor/bundle/ruby/2.2.0/gems/ac

Activerecord 属于并且拥有许多相同的项目

我正在为一个课程表建模,该课程属于一个用户、教师和课程的创建者,而且,该课程可以有许多学生,他们也是用户 所以应该是这样的 class Lesson < ActiveRecord::Base belongs_to :user has_many :users end 课程

在ActiveRecord中只加载一个条件的多个表

我希望这段代码能够输出所有不是草稿的播客,以及所有的博客和聊天。相反,它会输出所有内容。如果要筛选未分组的记录,请使用where: published = Activity.all.eager_load([:podcast, :blog, :chat]).select('podcasts.draft = false') published = Activity.where('podcasts.draft = false').eager_load([:podcast, :blog, :chat]

  1    2   3   4   5   6  ... 下一页 最后一页 共 10 页