如何通过比较2字段来筛选视图。如果字段-A <FIELD-B -- 7 领域 和 views 领域 和 commerce 领域 drupal 相关 的问题

How to Filter view by comparing 2 fields. If field-a < field-b


17
vote

问题

中文

我有一个有2个价格字段的产品内容类型。

我想创建一个显示所有产品的视图,其中Price-a低于Price-b。

我希望我能只能添加一个过滤器,然后选择价格 - 然后选择工作量小于并将值设置为price-b,但是您不能这样做。

我已经研究了一个观点钩子,主要是hook_views_query_alter但没有运气。

我还尝试使用phy php模块并无法将其工作。

有谁知道实现这一目标的最佳方式吗?

英文原文

I have a product content type that has 2 price fields.

I want to create a view that shows all products where price-A is less than price-B.

I was hoping I could just add a filter and select price-A then choose operate less than and set the value as price-B, however you can't do that.

I have looked into using a views hook, mainly hook_views_query_alter but haven't had any luck.

I've also tried using the Views PHP module and been unable to get it to work.

Does anyone know the best way to achieve this?

        

回答列表

11
 
vote

您正在寻找的是过滤标准 $uuid = db_query("SELECT uuid() AS uuid ")->fetchField(); db_insert('mytable') ->fields(array('uid' => $uid, 'event_guid' => $uuid)) ->execute(); 1 :)

 

What you're looking for is the filter criteria Global: Fields comparison:)

 
 
 
 
4
 
vote

欢迎来到Drupal答案堆栈交换!截至目前,在Drupal视图中没有直接的方式实现这一目标,并且如我所知。

您可以使用视图php 模块。启用此模块并添加过滤器PHP过滤器,您可以在安装上方模块时从视图过滤全局类别中选择。

在过滤器的PHP代码部分中添加以下内容的一些东西。

              $uuid = db_query("SELECT uuid() AS uuid ")->fetchField();              db_insert('mytable')             ->fields(array('uid' => $uid, 'event_guid' => $uuid))             ->execute(); 2  

将Field_price_A更改为您的价格一个字段名称和Field_Price_B,您的价格B字段名称。

我测试了,它为我工作了!希望你也可以破解它: - )

 

Welcome to the Drupal Answers Stack Exchange ! There is no straight forward way to achieve this in Drupal views as of now, and as i know.

You can do this using Views PHP module. Enable this module and add a filter PHP filter which you can select from views filter Global Category once you install above module.

Add php code some thing like below in the PHP code section of filter.

$node = node_load($data->nid);  $field_a = field_get_items('node', $node, 'field_price_a'); $price_a = field_view_value('node', $node, 'field_price_a', $field_a[0]);  $field_b = field_get_items('node', $node, 'field_price_b'); $price_b = field_view_value('node', $node, 'field_price_b', $field_b[0]);  if ($price_a >= $price_b) {   return TRUE; } 

Change the field_price_a with your Price A field name and field_price_b with your Price B field name.

I tested and it worked for me ! Hope you can crack it too :-)

 
 
   
   
0
 
vote

此功能现在包含在版本7.x-3.8的视图中。查看 https://www.drupal.org/node/699252#Comment-7513087 >更多。

 

This functionality is now included in Views starting with version 7.x-3.8. See https://www.drupal.org/node/699252#comment-7513087 for more.

 
 
-1
 
vote

http://drupal.org/project/views_dependent_filters 非常有用...

"筛选条件" 的Add-uch具有新的潜水。一旦你尝试它......

编辑:抱歉,但不是&gt;或&lt;,但是对于可以通过或

分开的筛选组
 

http://drupal.org/project/views_dependent_filters is pretty useful...

The add-button of "Filter Criteria" has new submenues. Selfexplaning once you try it...

EDIT: sorry, but not for > or <, but for filtergroups which can be seperated by OR

 
 
-2
 
vote

如果价格是内容类型中的字段,则在Drupal 7视图中您可以自动,轻松选择字段Com-Parer。我猜这应该有效。

 

If price is a field in your content type, in Drupal 7 views you can automatically, and easily choose a field com-parer. I guess this should work.

 
 

相关问题

2  可以在服务器中重命名上传的文件以避免名称碰撞?  ( Can uploaded files be renamed in the server to avoid name collision ) 
我希望我的网站托管一些图像。用户能够将图像上载为内容类型。 如果两个用户创建内容并使用完全相同的名称(MyImage.png)创建内容并上传图像,则旧图像文件是否会在服务器中覆盖(因此,两个内容条目都将最终包含相同的图像文件)? 如果是的,它是相当令人不安的。所以现在我想知道:有一个模块是否重命名上传的文件,以便它不...

0  如何构建与清洁和“脏”URL兼容的链接?  ( How to build links compatible with clean and dirty urls ) 
我有一个不支持Clean URL的开发网站,我的生产网站确实支持它们。 如果我在节点的主体中构建链接,如: <a href="view-something/4,7">View something</a> 这在我的生产网站上显示了OK,但在开发网站时提供了404个。 如何构建普遍的良好网址? ...

1  在Drupal 7中为同一图像提供几个下载选项  ( Provide several download option for same image in drupal 7 ) 
有人会有什么想到如何在Durpal 7中创建同一图像的几个下载选项。 示例网站是: http://www.travesto.com/content/101jpg -Anime-Airmated 其中启用了几个下载选项。 我想为我的生日照片创建类似的选择。我认为可以是视图模块在这里使用。但不确定。如果有人有任何想法这样...

0  由于open_basedir限制,我无法启用最简单的最简单  ( I cant enable simpletest due to open basedir restriction being in force ) 
由于我的Drupal7 Installaton驻留在运行PHP 5.2.12的Linux服务器上,我无法启用SimpleTest。我在php.ini文件下找到了该指令,但它已经在那里发表评论。 当我尝试在我的模块配置中启用最简单时,我会看到以下错误: "测试框架需要禁用PHP Open_Basedir限制。检查您的W...

0  使用答案模块服务API奇怪  ( Service api acting strange with answers module ) 
我目前正在开发一个Android应用程序,它使用休息来与Drupal沟通 我已经设置了服务模块,并使用正常的"帖子" 内容类型节点 但是,如果我发布 question 节点从答案模块,它不起作用。 所以,我发布了这样的json字符串: {"node": { "title":"REST question", ...

1  如何在网站处于维护模式时启用Google Analytics?  ( How to enable google analytics while site is in maintenance mode ) 
我想知道有多少用户访问当前处于维护模式的网站。我已经安装了Google Analytics模块,但它没有将Google跟踪代码添加到维护页面,因此Google Analytics说"跟踪未安装" 。 如何在站点处于维护模式时启用它? ...

2  在User / X /和User / X /编辑页面上显示UID  ( Displaying uid on user x and user x edit page ) 
我想在 user / x 和用户/ x /编辑 uid (只读)用户的 uid (只读)页面。 通过使用下面的函数,我设法显示 user / x /编辑页面上的 uid 。 function my_module_form_user_profile_form_alter(&$form, &$form_state, ...

1  表单构建器模块不在Drupal 7中工作  ( Form builder module not working in drupal 7 ) 
可以有人确认是否表单构建器模块正在工作。我查看 .module ,似乎路径仍在使用Drupal 6格式。 ...

1  视图:公开过滤器 - 在特定日期集之间过滤掉结果  ( Views expose filter filter out results between a specific set of dates ) 
我有一个视图(内容类型= CAR,创建日期过滤器"公开" 和某些字段以显示在表中的结果)。 是否有任何方法可以在使用过滤器选择的日期中显示未创建的所有节点? 谢谢 ...

2  Drupalgetajax的Drupal测试  ( Drupal testing with drupalgetajax ) 
我正在努力为ajax api写一些自动测试,并获得奇怪的结果。如果我直接查看页面,我会看到以下输出,由drupal_json_output发送: {"guid":"8e2a179e-c901-8744-05fc-e80de9500dd6","success":1} 我的单元测试命中相同的URL。这是测试功能...

6  如何使用视图列出与给定介绍2配置文件相关联的用户?  ( How can i list the users who are associated with a given profile2 profile using ) 
我有一个具有组织内容类型的站点。每个组织都有一个关联的资料2配置文件,该配置文件包含对描绘组织层次结构的分类词汇表的引用。当用户注册时,它们会呈现与它们所属的组织关联的给定配置文件2配置文件。 我正在创建一个需要显示以下内容的视图中的报告: 组织 层次结构 用户 我可以建立组织和配置文件2的简介和配置...

1  #ajax回调未在选择(或其他)字段上射击  ( Ajax callback not firing on select or other field ) 
我有完全相同的问题,如此: http://drupal.org/node/1335568< / A> 也就是说,要转发OPS问题,我有代码如下所示。但是,当我对选择框进行更改时,"更改" 事件不会触发。随着回调没有运行。 这个模块的作者回答了但坦率地说,他的反应对我来说没有意义。 他的回复: "这些不是我必须具体...

2  Drupal安装无需设置“(MultiSite)运行  ( Drupal installation running without settings php multisite ) 
我们打算实现的是设置drupal.abcd.com作为MultiSite Setup的主要安装,ABCD.com,XYZ.com,PQRS.com是多站点设置的子站点。 主安装(drupal.abcd.com)应包含默认的Drupal安装(使用Bartik主题),ABCD.com应该具有内容的ABCD主题。 dr...

2  Drupal视图:使用分类术语创建3列主页  ( Drupal views create 3 column home page with taxonomy terms ) 
我希望为我的网站创建一个3栏主页设计,将3种不同的分类类型(新闻,培训警报和建议)分离为3个单独的列。每列不仅显示出分类项,而且会提取与它相关联的内容(例如,每个项目的预告片)标记为"新闻" )。 我对Drupal主题并不是很熟悉,但目前我已经能够使用Bartik主题使用我的网站来完成我想要的一切。是否有任何方法可...

0  我可以从自定义模块中挂钩表单吗?  ( Can i hook a form from a custom module ) 
我的表单函数称为 mymodule_join_form 在myModule中, differentmodule_form_mymodule_join_form_alter / code> 99887661 。但是,它没有被称为(我把'回声'你好'; die;) 我可以使用 form_alter 使用 if (form...

1  如何在节点表单中使用多值,全日历日期选择器?  ( How to use multi value full calendar date picker in node form ) 
用户先前报告的车辆在Excel表中使用格式化,看起来像一个完整的月份日历。在他们使用车辆的天数上单击"日历" 标记的Visual X(通过宏)中的单元格,并在再次单击时清除了单元格。 转换为Drupal节点表单现在每天只需三次点击。 "日期使用" 字段为多值(并不总是连续日期范围),因此它们必须: 单击文本框以启动...

1  如何实现实体引用,对象和CRUD操作?  ( How to implement entity reference objects and crud operations ) 
我想创建一个对象,命名为 xml 。 XML对象具有名称(字符串)和内容本身(以XML格式为单位)。 CRUD操作应支持如下: 我想让每个用户能够 c reate, u pdate,以及 d xml对象的弹性实例。 这些实例只能被他们的所有者看到( R EAD)。 我还希望能够在保存,删除等之前以数据编...

1  新用户注册字段  ( New user registration fields ) 
我有一个大约30名成员的网站,但我刚刚在注册上添加了一个新的强制性字段。我希望旧成员也被迫填补这一点。这是什么最好的方法? ...

0  如何为Apache Solr模块构建自己的视图  ( How to build my own view for apache solr module ) 
在Drupal 7中成功集成Apache Solr模块并显示结果II,发现它正在使用核心搜索模块的视图文件(搜索-excuest.tpl.php&amp; search-sexult.tpl.php)显示结果。 如何使用我的自定义文件类似于(搜索结果.TPL.php&amp; search-sexult.tpl.ph...

0  主题建议或主题被覆盖  ( Theme suggestion or theme overridden ) 
我有两个模板覆盖 - user-profile.tpl.php 和视图 - 视图 - myviewname.tpl.php 。 要生效这些模板,我必须将它们放入默认的主题中。 主要问题是我使用默认主题"bartik" ,我必须将它们放入"主题/ bartik /模板/" 以让Drupal主题系统知道它们。 我...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.