Форум русской поддержки Joomla!® CMS
06.12.2016, 16:08:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Можно ли добавлять дополнительные поля?

 (Прочитано 277 раз)
0 Пользователей и 1 Гость смотрят эту тему.
cosmosRusnire
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« : 27.09.2016, 14:14:25 »

Можно ли добавлять дополнительные поля к материалам в Joomla без плагинов? Если нельзя, то что лучше для этого использовать? Мне необходимо заносить данные в новые поля к материалу из фронтенда и получать их в админке.

И можно в Joomla отобразать в админке определенные материалы определенным админам?
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #1 : 27.09.2016, 14:40:03 »

Можно ли добавлять дополнительные поля к материалам в Joomla без плагинов?
Конечно можно. Единственно но - при обновлении версии движка они с вероятностью 99% потрутся.
А так да, всегда сам делаю (обновляюсь руками нужные файлы). Добавили поле в БД таблицы #__content, добавили в XML модели в админке и вывод редактирования в вьюшке. Потом в компоненте фронта в модели добавили поле в запрос и в шаблоне где угодно с ним оперируем. В Google есть весьма подробные инструкции
Но можно и через плагин, тогда при обновлении движка наши изменения не улетят в тартарары
Записан
cosmosRusnire
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #2 : 27.09.2016, 14:55:18 »

а есть плагины хорошие на примете?
Записан
SmokerMan
Профи
********

Репутация: +694/-25
Offline Offline

Пол: Мужской
Сообщений: 5225



« Ответ #3 : 27.09.2016, 15:28:04 »

а есть плагины хорошие на примете?
http://joomlaforum.ru/index.php/topic,253360.0.html
Записан
buyanov
Осваиваюсь на форуме
***

Репутация: +22/-0
Offline Offline

Пол: Мужской
Сообщений: 150


Сайты 74


« Ответ #4 : 27.09.2016, 15:33:55 »

Привет, скоро вроде будут кастомные поля =) в версии 3.7 вроде уже на гите есть исходники, а когда релиз будет хз =)
А так лучше бы плагинчик, если подробнее опишешь сколько полей и куда надо воткнуть могу побыстрому набросать такой =)
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #5 : 27.09.2016, 15:45:16 »

Привет, скоро вроде будут кастомные поля =) в версии 3.7
Кастомные обещают уже который год, но при этом в стандартном API не  могут доделать множественные чекбоксы еще с 1.5, вечно самому приходится обработчик писать.
Так что на разработчиков надеяться смысла нет
Записан
cosmosRusnire
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #6 : 28.09.2016, 04:58:42 »

Да, ждать поля не дело.

А вот другой вопрос, можно в Joomla отобразить в админке определенные материалы определенным админам? Может какие-то права добавить или ещё что.
Записан
bolonia
Осваиваюсь на форуме
***

Репутация: +22/-0
Offline Offline

Сообщений: 197



« Ответ #7 : 28.09.2016, 05:34:30 »

Добавлять свои поля можно в поле params - оно представляет из себя json. Есть плагины основанные на этом поле, например Fields Attach. По идее ничего перетираться не должно, но я лично не проверял.
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #8 : 28.09.2016, 12:58:45 »

Добавлять свои поля можно в поле params - оно представляет из себя json.
чем плох json в плане дополнительных полей - с ними нельзя непосредственно в запросе sql манипулировать. Вот это на мой взгляд самый большой минус и потому этим подходом никогда не пользуюсь.

А вот другой вопрос, можно в Joomla отобразить в админке определенные материалы определенным админам? Может какие-то права добавить или ещё что.
Так в менеджере материалов можно фильтровать список по авторам\уровню доступа. Сделать админам специальную группу и по ней сортировать.
Записан
cosmosRusnire
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 5


« Ответ #9 : 29.09.2016, 09:39:24 »

чем плох json в плане дополнительных полей - с ними нельзя непосредственно в запросе sql манипулировать...
Спасибо! я так и сделал)
Записан
buyanov
Осваиваюсь на форуме
***

Репутация: +22/-0
Offline Offline

Пол: Мужской
Сообщений: 150


Сайты 74


« Ответ #10 : 29.09.2016, 14:33:43 »

чем плох json в плане дополнительных полей - с ними нельзя непосредственно в запросе sql манипулировать. Вот это на мой взгляд самый большой минус и потому этим подходом никогда не пользуюсь.
Так в менеджере материалов можно фильтровать список по авторам\уровню доступа. Сделать админам специальную группу и по ней сортировать.
Юзаем MySQL 5.7 или PostgreSQL и будет всем счастье =) Там уже есть JSON поля
Записан
voland
Профи
********

Репутация: +487/-86
Online Online

Пол: Мужской
Сообщений: 8711


любит наш народ всякое гавно...


« Ответ #11 : 29.09.2016, 14:53:42 »

Юзаем MySQL 5.7 или PostgreSQL и будет всем счастье =) Там уже есть JSON поля
А можно с этого момента поподробнее?
Записан
buyanov
Осваиваюсь на форуме
***

Репутация: +22/-0
Offline Offline

Пол: Мужской
Сообщений: 150


Сайты 74


« Ответ #12 : 30.09.2016, 07:41:19 »

А можно с этого момента поподробнее?
Это про новые возможности MySQL
https://dev.mysql.com/doc/refman/5.7/en/json.html

Postgre давно уже поддерживает
https://www.postgresql.org/docs/9.6/static/functions-json.html

Ну эту страничку все видели =)
https://www.joomla.org/about-joomla/technical-requirements.html

Как-то пришлось поморочиться с этими делами в поисках достойной альтернативы EAV паттерну для хранения злосчастных кастомных атрибутов
https://en.wikipedia.org/wiki/Entity–attribute–value_model
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5315


Крепитесь, други.


« Ответ #13 : 30.09.2016, 10:58:48 »

Это про новые возможности MySQL
И чем это поможет при манипуляции данными, сохраненными в параметрах?
Записан
buyanov
Осваиваюсь на форуме
***

Репутация: +22/-0
Offline Offline

Пол: Мужской
Сообщений: 150


Сайты 74


« Ответ #14 : 30.09.2016, 11:36:08 »

И чем это поможет при манипуляции данными, сохраненными в параметрах?
Можно манипулировать json'ом
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5315


Крепитесь, други.


« Ответ #15 : 30.09.2016, 14:48:00 »

По вашим ссылкам это не совсем очевидно, нашел вот что https://laravel-news.ru/blog/tutorials/laravel-mysql-json-colum-fast-looku
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #16 : 30.09.2016, 22:29:10 »

Хм да, пропустил, в 5.7 можно делать так
вставить поле json
Код
INSERT INTO `book` (`title`, `tags`)
VALUES (
 'ECMAScript 2015: A SitePoint Anthology',
 '["JavaScript", "ES2015", "JSON"]'
);
искать по нему
Код
SELECT * FROM `book` 
WHERE JSON_CONTAINS(tags, '["JavaScript"]');

Но все-равно не очень удобно. Если хранить в json кучу параметров - то искать все равно крайне неудобно. Да и каждый раз добавлять индексацию полю...
Мне по старинке ближе, конечно, третья нормализация БД (по Бойсу-Кодду тоже не всегда удобно хранить в небольших базах).
Так что останусь на старом велосипеде - каждому параметру к объекту - отдельное поле с ключом связью.
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5315


Крепитесь, други.


« Ответ #17 : 01.10.2016, 03:14:24 »

А по той ссылке, что я дал, есть и способ с мета-полем, к которому можно обращаться как обычно.
Записан
Septdir
Живу я здесь
******

Репутация: +35/-3
Offline Offline

Пол: Мужской
Сообщений: 838


Skype: septdir


« Ответ #18 : 01.10.2016, 10:56:16 »

Читал недавно про json в 5.7 даже где видео не плохое было. Но все равно не шибко удобно. Так что все же для фильтрации удобнее хранить данные в отдельной колонке.
P.S можно еще через regexp если данных не много.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet