Вывод данных из связанных таблиц

2 мес. 1 день назад - 2 мес. 1 день назад #9073 от Alex
Здравствуйте!
Joomla! 3.9.14.
Наверняка эта тема здесь уже поднималась, но найти не получилось... (
Подскажите, как проще всего реализовать вывод данных двух связанных таблиц (например, Проекты и Задачи к ним)?
С дополнительными полями всё понятно, но как организовать вывод списка Проектов, а потом, при нажатии на какой-то Проект, выводить список Задач, привязанных к этому проекту?
И ещё парочка дополнительных вопросов.
1. Можно ли как-то формировать динамическое меню - выводить данные из таблицы Joomla в виде пунктов меню?
2. По логике категория Задачи должна быть вложена в категорию Проекты, т.к. Задач вне Проектов не бывает. Но, в этом случае, настраиваемые поля категории Проекты вылезают в форме создания новых Задач. ( Как это забороть?
Спасибо!
З.Ы. Хотелось бы обойтись если уж не штатными средствами Джумлы, то хоть чем-то полегче SEBLOD'а... )))

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

2 мес. 12 ч. назад #9075 от Wedal
Alex, "проекты и задачи" - это компонент. Фактически категории и материалы Joomla. Хотя многое зависит от того, что такое задача. Если просто текст. То проектом может быть как раз материал, а задачами его дополнительные поля.
Если в базе всё это уже создано, то для ответа на вопрос мне нужно понимать через что всё это создано.

По вопросам:
1. Да, через модуль. Обычно существуют готовые модули для таких задач. Здесь, опять же, всё зависит от того, через что созданы данные в таблице и что это вообще за таблица. В общем виде ответ простой: создаете модуль, который делает SQL-запрос к таблице БД, получаете данные, выводите их в нужном вам формате.
2. В настройках полей можно задать категории, в которых эти поля будут отображаться.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

2 мес. 2 ч. назад - 2 мес. 12 мин. назад #9076 от Alex
Исходя из идеологии Джумлы, Проекты и Задачи - и то и другое должны быть Материалом, но с разным набором полей (каждый из них может быть прокомментирован, у него можно менять статус, изменен исполнитель, дата исполнения и т.п.). У Задачи одно из полей - это указатель на ID Проекта из таблицы #__content. В интерфейсе на сайте Задачи отображаются жёстко привязанными к Проекту (список Проектов в меню - это как вариант, можно и по-другому.) - жмакаешь на Проект - раскрывается список Задач, Жмакаешь на Задачу - раскрывается история её изменений с датами, исполнителями, комментами. Как-то так, классическая система управления Проектами и Задачами. )))
По-возможности, хотелось бы обойтись без кодирования (я делал всё это "с нуля" и даже не на php-фреймворках уже много лет назад), именно минимальным набором готового функционала CMS (в молодости мы и CMS сами создавали, только тогда мы не знали, что это CMS - не было такого понятия). )))
Кстати, по п.2 - это не работает. Если Задача - это Материал из Категории Задача, которая, в свою очередь является подкатегорией Проектов, то при создании Материала Задача вылезают доп. поля из категории Проекты.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

1 мес. 4 нед. назад #9077 от Wedal
Alex, если вы хотите использовать и для Проектов и для Задач материалы Joomla, то можете разбить их по категориям и добавить разные наборы полей. Можете даже добавить поле SQL для привязки одних к другим по ID. Но вот выборку придется формировать кодом. Стандартными средствами это будет работать только когда проекты - категории, а задачи - материалы.

Вообще, я бы, на вашем месте, посмотрел в сторону конструкторов контента, того же SEBLOD. Всё-таки задача у вас чуть более специфическая, чем просто управление материалами. Это 2 разных типа контента, которые связаны между собой сложнее, чем категории и материалы.

По п.2. если так, то это можно решить использованием альтернативных макетов.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

1 мес. 4 нед. назад #9078 от Alex
Спасибо большое, Wedal! Если сподвинусь еще раз вернуться к SEBLOD (пытался уже после просмотра ваших роликов - за них отдельный респект, но там какие-то свои заморочки, уже не помню), то буду докучать вопросами по нему. :)))

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.