Изготовить тип поля

InstantCMS 2.X
#31 12 июля 2017 в 08:05
А что если нужно возможность выбора только один вариант из списка? scratch

"заполнять строковое поле с автодополнением"

Loadырь
В принципе для этого и нужна поля. Но чтобы расширить возможности было идея сделать в виде компонента.

"выбирать из списка с поиском"

Loadырь
Если только для этого то смысла не будет. В Chosen есть такое возможность и я где то читал что разработчики в будущем добавят это в фильтр.

Думаю лучше будет готовить ТЗ а потом уже подумать о реализации.
#32 12 июля 2017 в 11:29

Думаю лучше будет готовить ТЗ а потом уже подумать о реализации.

globator
Jestik, выложил своё ТЗ, оно вполне решаемо. Вам же нужно похожее, но я не совсем его понимаю/представляю. У меня самого мысли уже несколько месяцев витают о похожем, но совсем немного в другом направлении. Как видите сколько людей столько и вариантов исполнения. В любом случае его реализация возможна, только на движке версии с гита или 2.8.0.
#33 12 июля 2017 в 11:53
В принципе все не так уж сложна. Ест 2 типа списка которые создаются через компонент и выводится через тип поля. Потому что реализация только с помощью тип поля будет сложна. Но возможна это не так, технические нюансы Вы знаете лучше меня.

1. Создается список который наполняют сами пользователи. Мы все лиш добавляем первоначальный вариант. Когда пользователь вводить первые буквы подгружается соответствующие варианты. Как в админке при назначении модератора. Если никаких вариантов нету пользователь вводить ручками. И при сохранении вводимый пользователем вариант добавляется в список, в компоненте. Если что админ может редактировать чтобы выглядел хорошо или изменить порядок. Это уже обсудили здесь

2. Второй тип списка который можно создать в компоненте это зависимый список. Который будет подгружаться в зависимости от предыдущего выбранного варианта. Это нам уже знакома в типе поля местоположения. В принципе это и Вам уже знакома Loadырь. В конструкторе форм это шикарно реализовано smile

Возможно в будущем можно расширить возможности компонента.
#34 12 июля 2017 в 13:20
Ну теперь я напишу)

В общем, есть тип контента "Мастера" к нему добавляем поля: "Делаю" "Опыт в" с функционалом добавления значений.
В записи и фильтре вот как тут: yadi.sk/i/_5mILyAf3Kx2qj только что бы значения по алфавиту сортировались
При добавлении, наверное будет лучше сделать форму как в фильтре, только последним значением сделать "Добавить свое", или например начинаешь вводить значение, в форме выскакивают подсказки, и если такого нет. то остается только кнопка "Добавить".

В компоненте, Список действующий полей: "Делаю" "Опыт в", при заходе к примеру в "Делаю", видим список значений и можем их редактировать.
А также опции к полям: "переводить в нижний регистр", может "управление сортировкой", управление правами доступа к добавлению новых значений
#35 12 июля 2017 в 14:30
Да тут прямо два компонента типа "Тэги" и "География" надо скопипастить в один. Плюс поле "Список" и допилы. Обмозговать зависимость и вполне уже универсальное решение получится. Как понимаю желающих только трое, поэтому можно переходить к деталям: помимо того, что здесь озвучили, ещё как-то планируется использование данного "комбайна"? Скажем, если изменить вид в записи и т.п.
#36 12 июля 2017 в 14:53
Ну вот зависимые поля я даже не знаю… если они есть в конструкторе форм, то зачем они здесь?
#37 12 июля 2017 в 15:03

Ну вот зависимые поля я даже не знаю… если они есть в конструкторе форм, то зачем они здесь?

Jestik
Чтобы полноценна использовать в типах контента smile

Как вам такой принцип работы? ruseller.com/lessons.php?id=1321&rub=37
То есть не показывать все зависимые поля одновременно, сделая их не активной, как в типе поля местоположения. А подгружать по мере выбора.
#38 12 июля 2017 в 16:07
Мне вложенные поля пока ни к чему, но за компанию пусть будут, доплачу, авось пригодиться. Так что по ним тз делайте сами
#39 13 июля 2017 в 19:43
В общем ТЗ готово я думаю полностью
#40 16 июля 2017 в 12:20
Почти готово.
2.krivo.pro/news
user@krivo.pro 123456
Этому пользователю разрешено добавлять новые пункты в поле "Ссылка на фильтр в нижнем регистре по возрастанию". Админу можно во все.
Доступ в админку, предоставляется по запросу.

Осталось прописать удаление пунктов из списков в админке компонента, но чувствую появятся вопросы и предложения, поэтому этот момент будет оформлен в последнюю очередь. Зависимости в этом варианте нет совсем.
#41 16 июля 2017 в 13:33
Loadырь, а автопоиск это функция instant 2.8 или функция самого поля?
Можно ли выбирать только один вариант из списка?
Обязательно ли при добавлении нового элемента пользователем, использовать кнопку +? Может добавить при сохранении записи а подсказка пуст останется если нету нужного элемента. Не думаю что каждый поймет что это за кнопка scratch
#42 16 июля 2017 в 13:49

автопоиск это функция instant 2.8 или функция самого поля?

globator
Самого поля

Можно ли выбирать только один вариант из списка?

globator
Конечно. Или вы имеете в виду, что тип поля нужен буз множественного выбора?

Обязательно ли при добавлении нового элемента пользователем, использовать кнопку +?

globator
Обязательно, иначе сотрётся при переходе к следующему полю, ведь пользователь будет сначала искать, а если не найдёт, то нужно подтвердить, что именно эту фразу надо добавить. Так как он может вернуться к поиску по другому значению. Или может оставить неполную фразу, а админу потом сидеть гадать, что имел в виду пользователь набирая "варен" — варенье или вареники? а может сразу всё "Поваренная книга"

Не думаю что каждый поймет что это за кнопка

globator
вы про кнопку поняли без подсказки?
#43 16 июля 2017 в 14:52

Или вы имеете в виду, что тип поля нужен без множественного выбора?

Loadырь
Да, при добавлении записи.

вы про кнопку поняли без подсказки?

Loadырь
Я то понял. В принципе каждый может добавить после "Нет элементов для отображения" что то свое.
#44 16 июля 2017 в 16:01

Да, при добавлении записи.

globator
Добавил одиночных полей для примера.

В принципе каждый может добавить после "Нет элементов для отображения" что то свое.

globator
Сделал так, что если можно добавлять, то фраза "Нет элементов для отображения" заменяется на "Добавить новое значение".
#45 16 июля 2017 в 19:47
Вроде все как надо)
только вот заметил, набираю например "пла" ищется "Плавать", выбираю "Плавать", оно отмечается, но "пла" так и остается, пропадает когда убираешь курсор с этого поля
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.