节点访问/浏览次数:什么是domain_site和域ID境界的功能
-
19-09-2019 - |
题
我在我在Drupal创建一个视图得到重复的节点。它出现的问题是关系到参加意见的node_access表做的方式。
使用devel的,我看到以下查询:
SELECT node.nid AS nid,
node.language AS node_language,
node_data_field_weekend.field_weekend_value AS node_data_field_weekend_field_weekend_value,
node_data_field_weekend.field_weekend_value2 AS node_data_field_weekend_field_weekend_value2,
node.type AS node_type,
node.vid AS node_vid,
node_data_field_weekend.field_weekend_loc_nid AS node_data_field_weekend_field_weekend_loc_nid
FROM node node
LEFT JOIN content_type_wwme_weekends node_data_field_weekend ON node.vid = node_data_field_weekend.vid
INNER JOIN node_access na ON na.nid = node.nid
WHERE (na.grant_view >= 1 AND
(
(na.gid = 0 AND na.realm = 'all') OR
(na.gid = 0 AND na.realm = 'domain_site') OR
(na.gid = 0 AND na.realm = 'domain_id'))) AND
(
(
(node.type IN ('wwme_weekends')) AND
(node.status <> 0 OR
(node.uid = 0 AND 0 <> 0) OR 0 = 1)) AND
(DATE_FORMAT(STR_TO_DATE(node_data_field_weekend.field_weekend_value, '%Y-%m-%dT%T'), '%Y-%m-%d') > '2010-01-10') )
ORDER BY node_data_field_weekend_field_weekend_value ASC LIMIT 0, 5
在加入到node_access表是导致其他记录复制,因为有多个node_access记录到一个节点,一个与domain_site领域和与域ID的境界一个记录。
在数据看起来有点像这样(削减为了简洁一些列):
nid gid realm grant_view grant_update grant_delete
73 0 domain_id 1 1 1
73 0 domain_site 1 0 0
988 0 domain_id 1 1 1
988 0 domain_site 1 0 0
90 0 domain_id 1 1 1
什么用途的境界合适?这些记录是如何填充,而最重要的,我怎么能解决这个问题?是SQL吧?
解决方案 2
答案显然是很多更现实的,比我的想法是:
使用下享有“不同的节点”的配置选项,该取出愚弄。
其他提示
我觉得领域适合当你有多个站点访问Drupal站点打开,且使用域访问模块(的 http://drupal.org/project/domain )如果您并不需要在域访问模块卸载可能会解决一些这方面。如果您确实需要它,你将很可能需要一个过滤器添加到您的视图与节点的访问:访问和/或使用域视图模块。这应该让你在正确的方向前进。我从来没有与这些模块自己的工作。我只是通过模块的代码和项目页面去了。祝你好运!
不隶属于 StackOverflow