Ограничить, на какие узлы можно ссылаться

Можно ли ограничить узлы в поле ссылки узла узлами, которые были созданы текущим пользователем?

Представьте себе один узел типа x и несколько узлов типа y. Узел x имеет неограниченное количество полей ссылок узлов на узлы типа y.

ОБНОВЛЕНИЕ:

Пользователь должен сослаться на несколько примеров, чтобы показать свою квалификацию для определенного проекта. Все его опыты являются узлами типа "project_experience", которые имеют следующие поля:
1. один проект (ссылка узла на тип контента "project")
2. одно описание функции и опыта в этом проекте.

При создании узла «project_application» пользователь должен решить, какой из его опытов/проектов специфичен для проекта, к которому он обращается.


person jumper    schedule 10.03.2011    source источник
comment
Ваш вопрос не ясен, подробнее, пожалуйста...   -  person Nikit    schedule 10.03.2011
comment
спасибо, я попытался прояснить проблему!   -  person jumper    schedule 10.03.2011
comment
Важно отметить, что здесь я говорю о Drupal 7!   -  person jumper    schedule 11.03.2011


Ответы (2)


Да, это можно сделать, создав представление с аргументом для текущего пользователя, вошедшего в систему. Представление должно отображать все узлы ссылочного типа узла.

В поле ссылки на узел вы можете выбрать вид.

http://drupal.org/node/289738 должен дать вам представление о том, как представления могут быть используется с полем ссылки на узел.

person junedkazi    schedule 10.03.2011
comment
Большое спасибо, это будет полезно при создании обзора всего приложения, как я упоминал выше. Но проблема не в представлении, а в форме, которая представляется пользователю, создающему узел. - person jumper; 10.03.2011
comment
Представление используется для выбранного набора. нажмите «Дополнительно» в настройках для ссылки на узел. - person mirzu; 10.03.2011
comment
Спасибо, теперь я понимаю комментарий в drupal.org/project/references -> Все еще отсутствует: ' узлы/пользователи, на которые можно ссылаться, определенные функцией представления. Спасибо за ваш ответ, похоже, мне придется немного подождать полной поддержки Drupal 7. - person jumper; 11.03.2011

Вот что я сделал для временного решения (очень уродливое решение), ожидая, когда в Ссылках появится функция Advanced Node Reference Views.

Создайте патч для node_reference.module (версия: references-7.x-2.x-dev, 27 марта 2011 г.)

найти функцию _node_reference_potential_references_standard,

добавьте это после объявления функции:

global $user;
$uid = $user->uid;

после этой строки: $node_type_alias = $query->addField('n', 'type', 'node_type'); добавлять:

$node_uid_alias  = $query->addField('n', 'uid',  'node_uid');

после этой строки: $query->condition('n.type', $field['settings']['referenceable_types'], 'IN'); добавлять:

$query->condition('n.uid', $uid, '=');

Опять же, это не очень хорошее решение, на всякий случай, если вам это может быть интересно.

person gilzero    schedule 28.03.2011