Антоха82: Комментарии

Главные вкладки

7 августа 2018 в 14:14

gun_dose wrote:

В таком случае лучше вьюсом выводить контрольные, а вопросы выводить как их поля.


Так, что-то я запутался. В представлении можно выводить или поля, или содержимое целиком. Как можно вывести контрольную, а вопросы полями?

7 августа 2018 в 2:43

Столкнулся еще с одной проблемой. Странно работает навигатор. Если, скажем в каждой контрольной по 4 вопроса, а в настройках навигатора указать "выводить по 10 полей на страницу", то третья контрольная будет разорвана (2 вопроса останутся на первой странице, а 2 перейдут на следующую). Это в лучшем случае, бывает что на первой странице выводятся три контрольные, но в некоторых съедены по одному вопросу в конце (т.е. 1 контрольная - 3 вопроса, 2-ая - 3, 3-я 4 вопроса).
Как сделать, чтобы все поля из группы, были внутри группы и не переходили на следующую страницу?

31 июля 2018 в 19:54

Если посмотреть именно, как вы говорите, что уходит в drupal_render(), то тут еще интереснее, вот что туда уходит (я оставил только то, что касается вопроса):

31 июля 2018 в 19:41

Semantics wrote:

Я бы глянул в каком виде оно всё уходит в drupal_render(), а то может там уже [ ] > < заменены на HTML-сущности

Это первая мысль которая у меня возникла. Но там все нормально. Если в предыдущем коде закомментировать строчку $output = check_markup($output, 'otvet'); , то выдается < b >текст, т.е. содержимое поля.

25 июля 2018 в 19:40

А, вон как. Т.е. хуком_меню вывести представление на страницу. Я сейчас свою проблему по-другому решил (писал свой handler), но так надо будет тоже попробовать. Спасибо.

25 июля 2018 в 19:26

bumble wrote:

или лучше просто программно туда вьюху запихнуть (прям дефолтный дисплей).

Не совсем понял, представление вывести в блок?

25 июля 2018 в 19:13

bumble wrote:

Можете. Просто создайте представление-страницу и не морочтесь с хук_меню.

В настройках контекстного фильтра можно указать позицию аргумента в пути (считать с ноля, ремемберхараммам бро!).

Речь не о том, можно ли создать вьюху с аргументом в пути, а в том, что для такой вьюхи нельзя создать ССЫЛКУ в меню. Если создать представление-страницу и в самой вьюхе попробовать задать ссылку в меню, то вылезет сообщение :

25 июля 2018 в 12:44

fairrandir wrote:
Вы в hook_views_data указали связь с таблицей user?

Нет, у меня только связь с таблицей 'node'. Вот что у меня в коде:

<?php
function moy_modul_views_data() {

25 июля 2018 в 12:04

fairrandir wrote:


Нет, это не то. По ссылке предлагают установить фильтр по автору ноды. Автор всех нод я - администратор. Проблема в том, что ноды, которые надо вывести явно не связаны с пользователем. Эта связь установлена в таблице, которую я сам создал.

24 июля 2018 в 19:22

Semantics wrote:

Вероятно, речь идёт о текущем юзере.

Можно поставить https://www.drupal.org/project/me, например.


А чем это отличается от токена [user: uid]? При попытке создать ссылку не работает ни токен, ни me.

24 июля 2018 в 18:48

Нет, что-то я рано возрадовался. Вроде почти получилось, но на какой-то ерунде сижу весь день. В общем вот моя таблица, которую надо подключить к вьюхе:

Здесь нас интересуют три столбца: uid - айдишник пользователя, nid_kontrolnoy - айдишник контрольной, которую надо вывести и флаг - решил контрольную или нет.

Вот хук вьюхи:

24 июля 2018 в 9:23

marassa wrote:

в материал "Контрольная" добавить поле со списком пользователей, решивших ее


Это интересная мысль. Я только не совсем понимаю, как туда занести информацию о нескольких пользователях? Я понимаю, как в ячейку занести число, ну например одного пользователя с uid 17, а если их много, то нужно массив что ли заносить?

24 июля 2018 в 9:07

Была мысль сделать дополнительное поле в типе материала "контрольная" и заносить флаг туда. Тогда вьюха увидит это значение. Но мне кажется должно быть более изящное решение. У меня и так уже куча полей в этом типе материала. Кроме того, удобнее создавать одну таблицу и заносить туда всю информацию, нежели искать ее по полям из разных таблиц БД.

21 июля 2018 в 8:05

Olegars, интересная штука, но мне нужно чтобы каждое конкретное задание было на отдельной странице, а там, как я понял, используется технология AJAX.
Я думал есть какое-то простое решение, без использования сторонних модулей. Вот такая идея у меня появилась. В функцию, вызывающую форму пишем все как обычно, без всяких переменных и условий:

10 июля 2018 в 23:01

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

10 июля 2018 в 22:46

Конкретно модуль quiz, он нужен для проведения тестов. Когда пользователь заканчивает выполнение теста, в БД в таблицу quiz_node_results в поле time_end заносится время, когда тест закончен. Нужно отловить этот момент, т.е. перед тем, как эта запись будет сделана мой модуль должен на это отреагировать.

10 июля 2018 в 22:20

Чтобы было ясно, что я хочу реализовать.
Предположим есть модуль module_1 который записывает в таблицу tabl (созданную вручную или во время установки модуля) в поле znachenie какую-то информацию. Что-то вроде: