问题标签 [scopes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 访问合并范围中的关联字段
模型:输入了车辆有_many 里程读数(在这种特殊情况下,车辆在小时计上运行)。
在视图中,我需要显示为每辆车输入的最大小时读数。这包括显示车辆模型中有关车辆的几个字段,并且仅显示里程模型中最大的相关小时数。
我遇到的问题是合并两个范围:
和
我只能从 Vehicle 模型访问视图中的信息,并且不知道如何访问 max_hours 范围的结果。控制器:
使用<% @vehicle.each do |m| %>
我尝试过:
但就是无法解决。(错误是未定义的方法'mileage' for #)
任何人都可以看到我在搞砸什么,或者是否有更好的方法来做到这一点。非常感谢。
php - Yii: Getting distinct field values from a related model using scopes
I'm working on the Admin view in Yii for my Project model.
One of the columns with a filter is user (owner) of the project.
I can do something like this:
Which gives me a list of all users in the user table, but I'd like to create something that pulls the distinct users who own a project (I've got 200 users, but only a handful tend to create projects).
Project and User are related via:
I've tried a bunch of option in the findAll() method, but none worked, I'm not trying to do something with a scope.
So far I've tried this:
and my Scope is defined as:
I've tried so many iterations of the above I've lost count 'with'=>'username' 'select'=>'username' etc., but just can't seem to get it to work.
I've tried replace Project::model() with $model just because I thought it might have something to do with it, but no luck.
Any ideas are appreciated. Very new to Yii, but this seems like something it can do.
php - Yii:根据用户角色使用不同的范围
我有两个级别的管理员可以创建和更新用户,“管理员”和“经理”。
在我的用户 _form.php 中,我有一个“user_type”下拉列表,其中包含我的帐户级别。
我想限制经理创建“管理员”帐户,并且显然在用户更新自己的记录时完全隐藏下拉列表。
a) 有没有办法使用 rules() 来控制这种行为?b)我考虑创建一个名为“hideAdmin”的范围,如下所示:
然后在我的模型中创建一个名为“scopeToUse()”的公共方法,如下所示:
最后,像这样创建我的下拉列表。
我希望'scopeToUse()'会返回范围名称并且它会起作用,但我最终得到了这个:
关于正确方法的任何想法?
编辑
我最终从@Rafay-Zia-Mir 那里得到了启发,并在我的用户类中创建了一个新方法来检查权限并返回适当的 CHtml::listData 以及我想要的范围。不完全是我的意图,但最终结果是相同的,它使我不会在我的视图中放置太多代码,它允许我使用我的范围而不是重复选择标准。
这是代码:
ruby-on-rails - 很难为 HABTM 关系创建类范围
这是我的简化情况:
但Rule
恰好遵循 STI 结构。所以我有这个:
没什么大不了的,效果很好。所以现在我想创建一个只返回Producers
与ProductRules
与此等价的东西:
谁能指出一个快速的解决方案?
注意:我显然不想加载所有生产者并在之后选择它们,我只想直接加载正确的
更新
我正在使用 Rails 版本 2.3.15
ruby-on-rails - 如何将参数传递给 Rails 4 中的 has_many 关联范围?
Rails 4 允许你定义has_many
这样的关系:
因此,无论何时您都customer.orders
只会获得已处理的订单。
但是,如果我需要使where
条件动态化怎么办?如何将参数传递给范围 lambda?
例如,我只想为客户当前在多租户环境中登录的帐户显示订单。
这是我所拥有的:
但是,如何在我的控制器或视图中传递正确的帐户?当我这样做时,上面的代码已经到位:
我似乎随意地获得了 ID 为 1 的帐户的所有订单。
ruby-on-rails - rails 4 范围不等于和关联
我的控制器中有一个实例变量,我正在尝试将其转换为模型的范围。
实例变量:products
解释:
这显示了last_user值不同于user.username且类型为"Computer"的所有产品。它还排除了user_id:为nil或allow_multi_users属性设置为TRUE的任何产品。
我尝试了以下零运气:Products.rb
它似乎无法识别关联或在范围内允许“!=”。
任何想法或指示?
php - 使用 PHP 调用未定义的函数
我有这堂课:
当我跑步时
我收到一个错误:Fatal error: Call to undefined function func1()
行索引为echo func1();
我现在的问题是,我该如何func2
识别func1
这是范围的问题吗?
ruby-on-rails - Rails范围/类方法选择虚拟属性
我目前正在将has_scope
gem 与模型上的范围/类方法结合使用,以过滤返回到我的 UI 的结果集。
我有一个模型Task
,我希望能够过滤它status
——模型上的一个虚拟属性。
该Task
模型有一些您可能需要了解的属性
计算status
如下:
忽略这可能不是一种理想的方法这一事实,我目前已经实现了status
过滤方法,如下所示:
我不能只返回结果,select
因为它是 typeArray
而不是 an ActiveRecord::Relation
,因此我的where
hackery。对于上下文,我不能/不想返回数组的原因是将结果集传递给kaminari
分页。
请注意:我目前使用的方法符合我的要求,但我不喜欢它的完成方式。我觉得应该有更好的方法。
谁能建议一个更好的by_status
方法来返回一个ActiveRecord::Relation
吗?
tl;dr:需要一个类方法来返回一个ActiveRecord::Relation
对虚拟属性的过滤。
提前致谢。
sql - 根据关联模型数量查询
我正在做一个项目,我需要根据 where 子句下的关联模型的数量来确定模型的范围。这是我能想到的最好的:
但是,它不起作用,因为订阅未定义。在rails查询中有什么方法可以引用postgres当前命中的模型吗?我认为这是我正在寻找的 SQL:
这是我的应用程序的一个非常非常关键的性能部分,所以如果可以的话,我需要它在一个查询中运行。
编辑
顺便说一句,我不确定上面的 SQL 查询是否有效。我只是把它放在那里传达我正在寻找的想法。
ruby-on-rails - 通过 Rails 中的关联向 has_many 添加范围
我有一个Project
模型User
加入了一个Membership
模型。我想检索一个项目的成员,除了一个用户。
像这个答案一样,我想使用一个范围:
但这不起作用。
如您所见,这会导致两个查询,而不是一个。并返回所有成员,不考虑排除。
为什么这不起作用?