Можно попробовать сделать для поля значение по умолчанию, далее на /admin/content/node в списке "Обновить параметры" выбрать "Обновить" и нажать "Обновить"
Имеем 1000 нод типа Песня. Добавил новое поле с чебоксами Оригинал и Ремикс, по умолчанию стоит Оригинал. В нодах типа Песни которые ремикс - ручками добавил позицию ремикс. Оригинал в остальных лениво прописывать.
Я создал правило. назвал его Правило 3.
Выбрал там событие After updating existing content
(другие варианты события как то не подходят - content is going to be viewed)
Добавляю условие - field has volue
- обновленное содержимое (кофигур аргументов)
- выбираю поле свое где (прописаны оригианл и ремикс) выбираю убираю там галку с оригинала (вылезает видимо если по умолчанию выставить в настройках поля)
сохраняюсь
добавляю действие - Populate a field
выбираю свое поле и в настройках уже не трогаю галку у позиции ОРИГИНАЛ
сохраняюсь.
собственно все. дальше наверное что-то надо апгредить все ноды типа песня?
Всё работает...)))
Событие: перед просмотром контента
Условие: тип материала = песня
Действие: ССК-заполняемые поля (читать как заполнить поля)
Единственное: надо нажать очистить все кеши!
Да, при этом все ноды не обновятся вообще, это получается только для отображения. Обновятся только после редактирования.
Условие можно добавить: Если поле == ремикс + обратить галку поставить.
Повторяю это будет работать как фильтр, в базе ничего не обновится!
Если хочешь обновить базу, то
"RxB" wrote:
сие делается одним запросом
Понимаю что лень, мне тоже... Но это самый быстрый путь.
Комментарии
новый стартап?
это что такое?
Можно попробовать сделать для поля значение по умолчанию, далее на /admin/content/node в списке "Обновить параметры" выбрать "Обновить" и нажать "Обновить"
такого там увы нет. тока алисы и заголовки можно обновить
Ошибся, вместо выбрать "Обновить" - выбрать "Опубликован"
Выбирал галочка не появилась у материалов, при условии что в настройках поля по умолчанию стоит "оригинал". Чебоксы пусты.
rules
Создать новое правило: перед отображением контента
условие: если поле имеет значение (пусто)
действие: заполнить поле
Элементарно?!
/me скромно промолчит что сие делается одним запросом
Согласен (SQL запросы надо знать?!)
Просто в рулсе с помощью php можно расширить действия...
Я всегда буду рекомендавать правила!
Ну да,
UPDATE table SET field = 'value' WHERE 1
надо 10 лет учиться
надо каждый день делать!
iNFerNo скромно молчит от изобилия способов
Не прокатит, задача стояла так "Можно ли в 1-2 клика..", т.е. без участия клавиатуры
ахахахахахаха
С рулесами не получилось. Но поэксперментирую еще.
Что не получилось?
Давай вместе попробуем?
На каком-нибудь тестовом, у меня есть...
Имеем 1000 нод типа Песня. Добавил новое поле с чебоксами Оригинал и Ремикс, по умолчанию стоит Оригинал. В нодах типа Песни которые ремикс - ручками добавил позицию ремикс. Оригинал в остальных лениво прописывать.
Я создал правило. назвал его Правило 3.
Выбрал там событие After updating existing content
(другие варианты события как то не подходят - content is going to be viewed)
Добавляю условие - field has volue
- обновленное содержимое (кофигур аргументов)
- выбираю поле свое где (прописаны оригианл и ремикс) выбираю убираю там галку с оригинала (вылезает видимо если по умолчанию выставить в настройках поля)
сохраняюсь
добавляю действие - Populate a field
выбираю свое поле и в настройках уже не трогаю галку у позиции ОРИГИНАЛ
сохраняюсь.
собственно все. дальше наверное что-то надо апгредить все ноды типа песня?
или что...
С английским работать ненавижу...
поставь live_translation
действие думаю: Node-изменить поля!
Ну изменил на Node-изменить поля!
там только почему то нельзя выбрать какую позицию добавлять.
пи.сэ. а что нужно сделать что бы правило сработало то? или в изменение материала галочка не должна встать там где нужно?
Всё работает...)))
Событие: перед просмотром контента
Условие: тип материала = песня
Действие: ССК-заполняемые поля (читать как заполнить поля)
Единственное: надо нажать очистить все кеши!
Событие: перед просмотром контента
такого там нет
там есть похожее только это content is going to be viewed
Так при выборе события - content is going to be save
правило работает
попробую сейчас с этим
content is going to be viewed
Content is going to be viewed - перед просмотром контента
ну все ок. грасиес...
т.е. сейчас уже даже без просмотра нод типа песня уже везде галки проставились?
переводить автоматом с drupaler.ru ты всё же не хочешь?
ну я понимаю что после просмотра. а что нужно что бы друпал сам все просмотрел. это кликать по всем нодам...
с друпалер ру я загружаю не автоматом переводы... да и некоторые я сам перевожу как мне удобнее. автоматом не айс.
вопрос а в песнях где уже прописано поле Ремиксы - не будет заменяться на оригинал?
Собственно ремикс изменяет на оригинал. это не айс.
Добавил условие еще одно в СКК: field has volue (для нод не имеющих вообще галок в этом поле)
но тоже косяк. до ходит до первой ноды где проставлено в поле - ремикс. и далее уже не обновляет почему то.
Да, при этом все ноды не обновятся вообще, это получается только для отображения. Обновятся только после редактирования.
Условие можно добавить: Если поле == ремикс + обратить галку поставить.
Повторяю это будет работать как фильтр, в базе ничего не обновится!
Если хочешь обновить базу, то
Понимаю что лень, мне тоже... Но это самый быстрый путь.
Я не специалист по рулсу, просто мне нравится им пользоваться, особенно действием: Выполнить PHP код!
да я вообще не шарю в программирование.
т.е. все что мы проделали выше это только визуально. и если удалить сейчас правило все будет как было?