Activerecord 通过Rails 3中的关系筛选has_many中的子对象

您好 我有一个应用程序,其中公司和用户需要通过公司成员身份模型相互归属,该模型包含有关成员身份的额外信息(特别是,通过布尔值管理员,用户是否为公司管理员)。代码的简单版本: class CompanyMembership < ActiveRecord::Base belongs_to :company belongs_to :user end class Company < ActiveRecord::Base has_many :company_memberships

Rails通过activerecord sqlserver适配器连接到SQLServer2008

我下载了BitNami的Jruby。一切正常,但当我想连接到SQL Server 2008时,出现了一些问题 database.yml如下所示 development: adapter: sqlserver host: 127.0.0.1 instanceName: SQLServer2008 database: truetemp username: sa password: 7354500 我使用命令“Jruby-sr

Activerecord 亚音速3.0.0.4 SQL连接泄漏?

我使用亚音速3.0.0.4(ActiveRecord方法)已经有一段时间了,最近我编写了一个小页面,基本上检索了给定年份的大约500条记录,然后我只需遍历其中的每一条,创建活动记录类的新实例,只需修改周期字段,并在循环中保存每个实例 问题是,在执行该页面后,SQL server中有许多SQL连接处于挂起/打开状态(通过查看sp_who2)。在页面完成执行之前,我收到“超时已过期。在从池中获取连接之前已过超时时间。这可能是因为所有池连接都在使用,并且已达到最大池大小。”错误 代码如下: if(st

Activerecord 活动记录搜索范围在一定范围内,但在外部

这里没有 我在寻求一种在某个范围内搜索的方法,该方法可以获取所有不在该范围内的记录 正常方式的示例: Customer.where(body_size: 160..210) 我多么想要它: Customer.where(body_size: !160..210) 所以,我得到的所有记录都小于160,大于210。Dos提供了类似于上面代码的rails 基本上我想要这样的东西: Customer.where("body_size < ? AND body_size > ?", 160

Activerecord 基于记录级别的Yii2认证

在yii2中,我还需要一些RBAC访问控制,这也是记录级别的。作为一名yii2初学者,我正在寻找进入逻辑的最佳点,但在文档中挣扎 例如: 一张桌子上的孩子们提到一个孩子,除了许多其他的孩子。 一个孩子通常有两个父母在桌上。 除了通过yii2 admin/user进行其他访问控制外,这两位家长还可以查看和操作自己孩子/ren的记录,但不能查看和操作其他孩子/ren的记录。 登录的用户是父用户。 表子项示例: 示例表父项: 与子对象和父对象的外部参照关系示例表: 我认为activeRecord班的孩

Activerecord-获取所有相关记录的总和

我有两种型号:发票和付款 # == Schema Information # # Table name: invoices # # id :integer not null, primary key # totale :decimal(8, 3) # .... # .... # class Invoice < ActiveRecord::Base has_many :payments end # == Schema

Activerecord 在yii2中的redis模型内查询

我创建了一个redis模型,它应该存储如下统计信息: <?php namespace app\models; use Yii; use yii\base\Model; use \yii\redis\ActiveRecord; use \yii\redis\ActiveQuery; class StatsModel extends ActiveRecord { public function attributes() { return ['id', '

Activerecord AR中AndWhere过滤器的正确使用

我使用下面的查询来获取总数,以便在Gridview上方显示一个小的仪表板图 我想知道在选择了“注册id”和“全部不带注册id”参数时,此查询的正确工作方式 索引视图文件 控制器 试着这样做: $query= Quota::find()->where(['quota_status'=> 1]); if(isset($manager) && $manager!=null) { $query->andWhere(['quota_regi

将Yii中的表单数据获取到CActiveRecord模型适用于一个模型,但不适用于另一个模型

我通过这种方式收到一份提交的表格: $resume->attributes=$\u POST['ResumeModel'] $profile->attributes=$\u POST['UserProfile'] 在此之前,两个CActiveRecord模型都已从相应的表中正确填充,它们具有正确的数据和所有数据。 两个模型的数据都显示在由表单修改的$\u POST上。 但是,对attributes属性的分配似乎只适用于$profile,而不适用于$resume。 如果我在赋值后检查它们的值,$p

Activerecord Rails 3.1遗留表的多态关联问题

假设我有一个名为server的传统MySQL表,其中包含字段serverid:integer和 servername:string 我创建了一个名为action的新表,它将具有: t.integer :actionable_id t.string :actionable_type t.string :text 我希望此表与旧服务器具有多边形关系 桌子 当我这样做时: class Server < ActiveRecord::Base set_table_name "s

Activerecord 错误导致的Yii关系模糊不清

我在mysql中有一个结构: community: id | etc... category: id | community_id | etc topic: id | category_id | etc 所以,我在社区模型中编写关系 'categories' => [self::HAS_MANY, 'Category', 'community_id'], 'topics' => [self::HAS_MANY, 'Topic', 'id', 'through' => 'c

Activerecord Yii2 SQLSTATE[HY093]:参数编号无效:未绑定任何参数

在我的ModelSearch中,我有如下代码: 然后我尝试继续这个查询: 最后我返回$dataProvider 我记得我曾多次使用过这种代码,从未遇到过任何问题,但在整个尝试之后,出乎意料地我仍然收到相同的错误: 当我以这种方式编写代码时: 这似乎管用,但我不想那样做。我想这个问题的线索可能在别的地方,但我不知道我应该在别的地方寻找它 有什么建议吗 致以最良好的祝愿 [编辑]已解决: 的提示结果是正确的:只需从或中删除空格就可以了。 QueryInterface无法识别未修剪的条件运算符

Activerecord 修复了“”上的弃用警告“危险查询方法”。.order`

我有一个定制的gem,它使用来自elasticsearch实例的输入创建AR查询 记录ID:是ES结果的返回ID order:是ES返回的ID的顺序 search\u class.wheresearch\u class.primary\u key=>record\u id.orderorder 现在的实现是将订单字符串直接构建到order变量中,因此看起来像这样:[\positions\.\id\='fcdc924a-21da-440e-8d20-eec9a71321a7'DESC] 这可以正常

Activerecord 带2个参数的活动记录和

我有一个使用ActiveRecord 3.0.3的Rails3应用程序 我试图根据表中的两个子查询字段获取表的总和 使用Rails控制台,我可以让它返回正确的值,如下所示: result = MyObject.sum(:foo, :conditions => "foo_id = #{self.id} AND bar_id = #{self.bar_id}" ) 然而,我无法让它与这样的东西一起工作: result = MyObject.sum(:foo, :conditions =>

Activerecord 如何验证Yii中的价格(金额)mySql十进制列?

我使用mySql十进制(12,4)列来保存价格值(看看Magento是如何使用的)。我想在我的ActiveRecord模型中使用Yii的规则来创建它们,但我不太确定如何做到这一点 我想我可以在设置为“float”的情况下完成,但我想看看其他人是如何做到这一点的。我没有看到真正的“货币”验证器。也许我应该验证一下长度 array('price', 'type', 'type'=>'float'), 或 建议和例子?谢谢 我自己使用了: array('price', 'type', 'typ

Activerecord 在Heroku上,运行db:migrate而不出错,填充了'schema_migrations',但未更改schema

我有一个Sinatra应用程序,我正试图与Heroku一起部署。应用程序正在运行,并且工作正常(不依赖DB连接的部分) 我已经为应用程序创建了一个Postgresql数据库,但由于某种原因,当我尝试迁移数据库时(我的初始迁移是创建一些表),尽管没有错误,但没有创建表。更奇怪的是,schema_migrations表中填充了迁移的时间戳,就好像它们是正确运行的一样 我尝试重新启动应用程序,删除数据库并创建一个新的数据库 谢谢你的帮助 请参见下面的输出。应该已经运行了13次迁移 dave@macbo

Activerecord 活动记录合成

遵循单一责任原则,我希望将一些属性和状态放在一个单独的类中,但是,我希望它位于同一个表中 例如: class Person attr_accessible :name, :age end class Measures attr_accessible :weight, :height, :other_attrs end 如何将度量值组合到Person中,并将度量值数据存储在Person表中?我不确定这是否适用于rails 4,但在rails 3中,您可以执行以下操作 class Mea

RubyonRails 4:用于连接的ActiveRecord方法

我有两个相关联的表,用户和列表。此join语句在我的所有控制器操作中都可以正常工作: @users = User.joins(:lists).where(lists: {list_id: 1}) 在我的用户模型中,我将这样做: def list_joined self.joins(:surveys).where(surveys: {survey_id: 1}) end 因此,在控制器操作中,我可以执行以下操作: @users = User.list_joined 但这给了我一个错

Activerecord 在has_上获取唯一对象,并且_属于_many

我有3个实体:提要、剧集、系列。feed有很多集,而且属于很多集。剧集属于系列 我想要的是一个提要的所有系列,以及该提要中该系列的剧集数。您可以通过首先查找所有系列的ID,为给定的一组剧集生成所有系列的完整列表 # uniq insures that any duplicates are removed ids = feed.episodes.map(&:series_id).uniq 然后找到系列本身: series = Series.where(id: ids) 通过简单的计数,

Rails--ActiveRecord::StatementInvalid:SQLite3::SQLException:没有这样的列:

目前存在重大Rails问题。我正在创建一个学校仪表板应用程序,它采用一个名为“注册”的外部参照表,将课程和学生联系起来 每当我试图更新注册的分数时,我总是得到这一行 ActiveRecord::StatementInvalid: SQLite3::SQLException: no such column: UPDATE "enrollments" SET "grade" = ?, "updated_at" = ? WHERE "enrollments"."" IS NULL 当我更新课程或学生

Activerecord _和_是否属于需要创建的许多模型?

我有订单和项目表。我还有第三个表叫orders\u items。这是我从下面的链接(第二张图)中了解到的 models/order.rb class Order < ActiveRecord::Base has_and_belongs_to_many :items, through: :item_order end 我是否必须创建一个models/order_item.rb文件来添加: belongs_to :order belongs_to :item 如果是,那么正确的命名格式应

Activerecord Rails 4:获取已删除加入关联记录的记录

我有以下型号: class Grade belongs_to :student end class Student has_many :grades end 我怎样才能知道哪些年级有被删除的学生?换句话说,我想做一个查询,返回我在下一行代码中所做的事情 Grade.all - Grade.joins(:student) 可能吗?谢谢 您正在查找此查询: Grade.includes(:student).references(:student).where('students.id

yii2 ActiveRecord findBySql-响应内容不能是数组错误

Yii2细微差别的新特点 只是尝试从ActiveRecord查询中获取返回。我意识到使用Yii2约定可能有一种更简单的方法来实现这一点 public function actionGet_permissions() { $sql = 'select * from auth_item where owner_user_id IS NULL'; return Auth_Item::findBySql($sql)->all(); } “错误”响应内容不能是数组 我认为很明

Activerecord Yii-按条件排序的sql请求

如何创建a=0的活动查询请求 SELECT * FROM list ORDER BY a = 0, a; => Email::find()->orderBy('a=0', 'a') 这将有助于您: Email::find()->orderBy([new \yii\db\Expression('a=0'), 'a' => SORT_ASC]); 这将有助于您: Email::find()->orderBy([new \yii\db\Expression('a=

Activerecord 删除记录不会破坏关联

我有一个任务模型和用户模型,我有一个连接表b/w任务和名为标记的用户。 Task.rb 但是这个测试失败了 Task untag should untag user from task Failure/Error: expect(@task2.tag_exists_for(@user)).to be false expected false got true 在进一步的调查中,我发现untagtag会删除标记记录,但当我调用task.tags时

在Visual Web Developer Express中使用亚音速ActiveRecord模板编译错误

多亏了,我能够在VisualWebDeveloperExpress中为我的ASP.NETMVC项目生成亚音速T4代码,但是仅使用LinqTemplates 当我使用具有相同设置的ActiveRecord模板时,我的项目会生成文件,但代码不再编译 有什么想法吗?先把其他T4模板拿出来。我认为包含来自编译器的错误消息是个好主意。.我有32个错误,但这是第一个错误:“ray.testDB”类型已经包含了“DataProvider”ActiveRecord.cs行21的定义。感谢您的回复,这似乎是项目类

Activerecord 使用delete_all和make时rails 3中的mysql超时错误!分步定义

我在cucumber步骤定义中使用以下构造 Given "I have following stuff" do Model.delete_all list.each { |i| Model.make!(:name => i) } end (make!来自机械师2) 上述步骤因INSERT语句超时而失败。当我为test、environment打开控制台时,我可以毫无问题地执行每条语句。另外,如果我禁用事务性功能,超时就会消失 谁能帮我修一下吗?(运行时rails 2.x没有

Activerecord Rails 3-示波器

我的模型设置与此类似: class Book < ActiveRecord::Base has_many :histories, as: :object end class Magazine < ActiveRecord::Base has_many :histories, as: :object end class Action < ActiveRecord::Base belongs_to :object, polymorphic: true defa

ActiveRecord 4如何使用用户:订单和:包括

我刚刚升级到Ruby 2.0,默认情况下会为Padrino应用程序加载ActiveRecord 4。这很好,我想利用Ruby 2.0和AR 4的改进。然而,我很难重写一些以前有效的关系 例如,这不再有效: has_many :dvd_credits, :order => 'position', :include => [:dvd_actor, :dvd_role] 它给出了一个不推荐使用的警告,但它显示的示例是无用的:有很多:spam\u注释,->{where spam:tru

Activerecord 验证存在性和唯一性,rails 4

我的模型中有以下代码: validates :user, presence: true, uniqueness: {scope: :project} 单独的验证器,存在性和唯一性,如果另一个不存在,每个都可以正常工作。但是,如果它们都如上所述存在,则presense验证器将停止工作。当我试图保存一个用户为nil的对象时,我得到的不是一个正常的保存错误,而是一个异常: NoMethodError:nil的未定义方法“属性”:nil:NilClass from/usr/local/lib/ru

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 过滤关联';带弹性搜索和轮胎的ids

很长一段时间以来,我一直在为一个简单的问题伤脑筋。我在StackOverflow上查看了所有文档和示例,以及关于Tire的大多数问题,但没有成功 基本上,我正在尝试根据一些相关模型的ID过滤搜索结果 以下是模型(请注意,我目前仍然使用动态映射): 事实证明,动态映射并不能解决这种情况。我还必须定义数据的索引方式 以下是我的映射: mapping do indexes :id, index: :not_analyzed indexes :kind, index: :not_analyzed

Activerecord YII活动记录仅选择指定的文件

我只想获取指定的字段,但执行此操作时: $criteria = new CDbCriteria(); $criteria->condition = 't.DeletionMark = 0'; $criteria->select = 't.Description, address.Description, city.Description'; $data = WCatalogInternetCounterparties::model()->with('internetCo

Activerecord 仅在创建新记录时修改SQL列

seq是DB表中的整数列 我想要一个CActiveRecord派生类,它在创建新记录时在SQL中执行seq=MAX(seq)+1,在更新现有记录时不修改seq列 如何解决?由于整个业务逻辑不清楚,但从上面的讨论来看,这可能是您的解决方案: 将以下两个函数添加到所需的模型类中,就完成了 public function beforeSave(){ if($this->isNewRecord){ $this->seq=$this->getNextSeq(); } r

Activerecord yii2如何使用外键获取关系和id标题

我有一个事件模型,一个事件有一个项目,一对一的关联,我在事件模型中有写函数来得到项目,如下所示 public function getprojects() { return $this->hasOne(app\models\Project::className(), ['id' => 'projectid']); } 下面是我的控制器的代码 if ($model->load(Yii::$app->request->post()) && $

Activerecord 有没有其他方法可以找到每种方法?

我一直在使用Rails 2.3.5。 我想使用find_每个方法,但它不在版本中 对于活动记录,是否有其他方法可以使用“查找”每个方法?尝试批量使用“查找”: Model.find_in_batches(:batch_size => 1000) do |records| records.each { |record| <your logic here> } end Model.find_in_batch(:batch_size=>1000)do|记录| 记录。每个{

上一页 1 2 ...  6   7   8   9    10   11   12  ... 下一页 最后一页 共 20 页