Как подружить vbo и tabledrag drupal 8

Аватар пользователя vlucas vlucas 17 января 2018 в 23:06

Пытаюсь в представлении вывести сразу массовые операции (VBO) и tabledrag (drupal_attach_tabledrag).
Вместе корректно работать отказывается - сбиваются имена чекбоксов VBO, не показывается submit tabledrag. И если последнее лечится, то первое никак не могу.
Может кто уже сталкивался? Интернет смотрел, тоже только одни вопросы пока без ответов...

Комментарии

Аватар пользователя vlucas vlucas 18 января 2018 в 10:48

Странно, что не приоритетный, конечно же лучше 1000 страниц раздельных плодить )))

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 13:29

Василий Сергеевич wrote:

конечно же лучше 1000 страниц раздельных плодить )))

Нет. Просто не должно возникать подобных задач. Или решаться они должны не мышкой в админке

Аватар пользователя vlucas vlucas 18 января 2018 в 13:37

GUN wrote:

Василий Сергеевич написал:

конечно же лучше 1000 страниц раздельных плодить )))

Нет. Просто не должно возникать подобных задач. Или решаться они должны не мышкой в админке


Интересно, а что плохого на одной странице сортировать материалы и давать возможность удалять/unpublish лишнее? ИМХО - удобно.

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 14:09
1

Почему то на эту тему тему вспомнился анекдот:

В театре премьера спектакля. На премьеру пришёл известный актёр(И) и засел в театральном буфете. Тут в буфет забегает молодой актёр(М), который должен играть в данном спектакле:

М: Маэстро, выручите советом. Что мне делать? В первом действии мне нужно на сцене выглядеть немного выпившим, но я не знаю как.
И: Юноша, это проще простого. Берёте в буфете 100гр. коньячку... выпиваете... и на сцену
М: Спасибо, маэстро.

Молодой актёр берёт 100гр. коньяка, выпивает и убегает. После первого действия возвращается в буфет:

М: Маэстро, спасибо. Это было великолепно. Зал мне верил. А теперь мне нужно на сцене выглядеть изрядно пьяным. Что мне делать?
И: Ну что ж вы, голубчик? Берёте в буфете 300гр. коньячку... выпиваете и на сцену.
М: Спасибо, маэстро!

Выпивает. Убегает. После действия уже пошатываясь возвращается в буфет:

М: Маэстро, как я играл, как играл... весь зал был мой... Теперь в следующем действии мне нужно быть на сцене в говно пьяным.
И: Голубчик. Это ж элементарно. Берёте 0.5 коньячку... дальше Вы знаете
М: Гениально!!! Спасибо, маэстро!

Выпивает. Убегает. После действия еле-еле вваливается в буфет, задевая все столы и стулья:
М: Маэстро, я был на высоте, на пике славы, зал мне апплодировал стоя. А как теперь мне в последней сцене быть абсолютно трезвым?
И: А вот тут, голубчик, играть надо. Играть!

Василий Сергеевич wrote:

Интересно, а что плохого на одной странице сортировать материалы и давать возможность удалять/unpublish лишнее? ИМХО - удобно.

ИМХО, удобно это когда в строке с материалом просто аяксовая кнопка (удалить/снять с публикации), а что касается сортировки, то она вообще не должна быть у большого количества объектов по изменяемому int полю. По дате, названию, ещё какому признаку... но никак не вручную - это уже ошибка архитектуры

Аватар пользователя vlucas vlucas 18 января 2018 в 16:11

GUN wrote:

Почему то на эту тему тему вспомнился анекдот:

Как можно рассуждать об архитектуре, не зная саму архитектуру???
Да и вопрос то не про неё!

Аватар пользователя vlucas vlucas 18 января 2018 в 16:14

GUN wrote:

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

Зачем тогда деревья придумали и модули специальные, например, book.
Наверное
GUN wrote:

ошибка архитектуры

Аватар пользователя bsyomov bsyomov 18 января 2018 в 16:32
1

Тут как раз нет противоречия - это категоризация, разбиение на части, а не сортировка по весу, например.

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 17:22

Василий Сергеевич wrote:

Как можно рассуждать об архитектуре, не зная саму архитектуру???

Вы понимаете, что используете, по сути, обыкновенный конструктор и пытаетесь из 2х квадратных деталей сделать шар?
А анекдот действительно в тему. Вы линейно по очереди пытаетесь решать возникающие задачи. В итоге упираетесь в ограничение системы и "ноете"(как любят тут выражаться некоторые), почему подобная штука не приоритетна.
Двигаемся дальше. Любая архитектура имеет свои ограничения. И вопрос только как скоро упрётесь в эти ограничения. Сама по себе архитектура друпала довольно гибкая, хоть и не оптимальная(но на то это и конструктор с квадратными человечками, а не похожими на настоящих). Каждый дополнительный модуль накладывает дополнительные ограничения на конечный продукт(Вы используете "колёса", чтобы сделать ременную передачу, вместо того, чтобы продукт ездил, так как пока это не требуется). В итоге, когда потребуется "поставить проект на колёса" этих самых колёс не окажется, а если попытаться совместить функционал ременной передачи с движением, то что-то из этого скорее всего будет работать не правильно.
Из реальных кейсов администрированя каких-либо наборов данных я реально не вижу необходимости в том, что Вы описываете в своём топике. Предположим есть некий набор данных. Для чего каждый раз дёргать "настроенные веса"? Значит изначально при создании объекта создаётся неправильный вес. Ошибка? Ошибка. Далее массовое удаление/снятие с публикации. Тут реальных 2 кейса - устаревание контента, требуется модерация, так как контент создаётся не администрацией. Устаревание можно ограничить лимитом по времени, если контент создают пользователи, то опять же зачем дёргать веса у пользовательского контента? Чтобы менеджер не сидел без дела? Делать "автоматическую" систему, которую нужно постоянно править руками это ошибка. Как видите, даже не "зная вашу архитектуру" можно сделать вывод, что в ней есть ошибки.
Василий Сергеевич wrote:

Зачем тогда деревья придумали и модули специальные, например, book.

О, а Вы знаете как храняться деревья? Как они могут храниться? Как они храняться в друпале? Что происходит при изменении позиции элемента?
По поводу Book. Опять же где Вы видели, чтобы в книге каждый день главы местами меняли?

Теперь касательно Вашей конкретной проблемы. Вы знаете как работает VBO? Как сериализует данные и откуда их достаёт? Такой же вопрос по tabledrag. Как работает js последнего? Вот когда Вы сами ответете себе на эти вопросы, можно будет разговаривать более предметно. Никогда не будет работать правило Unknown + Unknown = Всё как я хочу.

Аватар пользователя ivnish ivnish 18 января 2018 в 17:57

Если вы недовольны ответами конкретных персонажей, ресурс тут ни при чем)

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 18:49

Василий Сергеевич wrote:

Бла бла бла, а по сути вопроса = 0.

Я ответил Вам на вопрос "Как можно рассуждать об архитектуре, не зная саму архитектуру?".

А на вопрос топика вариантов не много. Всего 2:
1. Как и писал выше - понять как именно работают данные модули. Почему именно сбиваются имена чекбоксов. И возможно это вылечится небольшим js кодом
2. Написать свой интерфейс со всеми Вашими хотелками. Но сперва, я бы пересмотрел архитектуру проекта. Очень велика вероятность, что Вы "лепите горбатого"

Ну или подождать пока кто-нить ещё захочет вместо Вас провести данное исследование

Аватар пользователя vlucas vlucas 18 января 2018 в 18:53

Вот если бы вы сразу так и писали, то ценность этого ресурса была много выше! Просто - понятно, без стёба, сарказма, анекдотов не в тему.

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 19:55

Василий Сергеевич wrote:

Вот если бы вы сразу так и писали, то ценность этого ресурса была много выше! Просто - понятно, без стёба, сарказма, анекдотов не в тему.

1. Ценность - понятие относительное. Для кого-то и доширак - ценность.
2. Анекдот в тему и я объяснил почему.
3. Я ни капли не стебался.

Полагаться на какую то магию, тем более в программировании, глупо. Если программа работает не так, как ожидается - это плохая программа. Если программист не знает как работает хотя бы один узел его программы - он плохой программист. И я пытаюсь это донести. Лучше задаваться вопросами "почему это не работает", а ещё лучше "почему работает", чем "Что сделать, чтоб заработало". Всегда нужно бороться с причиной, а не с последствиями. А узнать причину помогают именно вопросы из серии "почему". Мне очень жаль, что Вы не задаётесь подобными, а ищите только решение проблемы, возникшей в конкретном месте.

Можете считать меня кем угодно, но я говорю о том, о чём стоит задуматься, раз выбрали для себя такую профессию/хобби. В противном случае ничего хорошего не выйдет.

Аватар пользователя vlucas vlucas 18 января 2018 в 20:01

Вам бы на философский факультет заведующим кафедрой! И я не сколько не стебусь

Аватар пользователя ХулиGUN ХулиGUN 18 января 2018 в 20:10
1

Василий Сергеевич wrote:

Вам бы на философский факультет заведующим кафедрой! И я не сколько не стебусь

К сожалению, я не гуманитарий. Да и образования нет. ПТУшник я)))

Удачи в поисках ответов