Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Выбор товаров в компоненте

21.01.2016, 08:47
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Здравствуйте!

Столкнулся с заданием: человеку надо так сделать компонент, чтобы в нем присутствовал выбор товаров из выпадающего списка для использования В АДМИНКЕ. Товары, понятно, это другой компонент. Смотрел в сторону "связь с другим объектом", но там не похоже.

По сути, кроме стандартных Неткатовских полей - строка, число и прочие - надо уметь добавить свое поле, где тип поля - товар, другой компонент.

Это вообще реально? В какую сторону копать?

Спасибо
21.01.2016, 08:57
resident
Веб-группа «Дабл Ю»

Зарегистрирован:
2005-01-10
Сообщений: 336

если связь с другим объектом не устраивает, то можно сделать свой шаблон, в котором сделать выпадающий список с другими товарами
<select name="f_Fileld"><?=listQuery("SELECT Message_ID,Name FROM MessageXX","<option value='\$data[Message_ID]'>\$data[Name]</option>")?></select>
21.01.2016, 09:05
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Спасибо за ответ!
Я уточню: требуется получить выпадающий список для выбора товаров в АДМИНКЕ, не на сайте.

То есть я создаю компонент "Скидка", у него поля "Начало акции (дата), скидка (число), товар(компонент?)". Я в админке кликаю на "товар", и делаю выбор из списка.

Предложенный Вами способ сработает? Если да, то куда мне вставить этот скрипт?
21.01.2016, 19:03
Игорь
Игорь Мишарин
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 479

Связь с другим объектом - как раз оно.
В поле формат вводите MessageXXXX
MessageXXX - компонент с товарами.
И в этом поле у Вас будет ID выбранного товара (Message_ID).

Stark
23.01.2016, 00:40
Дмитрий
Дмитрий
Дмитрий

Зарегистрирован:
2015-07-31
Сообщений: 53

Да, с этим я уже поэксперементировал, спасибо) Вопрос в том, как сделать выбор товара не из выпадающего дерева, а организовать на этом месте выпадающий список товаров.

Это задача минимум. Максимум - еще и формировать список по результатом поиска по названию. Но это, думаю, вообще фантастика в рамках Нетката)
24.01.2016, 14:17
Гость
Гость

Цитата:
Да, с этим я уже поэксперементировал, спасибо) Вопрос в том, как сделать выбор товара не из выпадающего дерева, а организовать на этом месте выпадающий список товаров.

Это задача минимум. Максимум - еще и формировать список по результатом поиска по названию. Но это, думаю, вообще фантастика в рамках Нетката)

Вам же дали ответ о том как это организовать выпадающий список - изучите, хотябы немного, документацию в разделе компоненты ... про альтернативные формы доавбления/изменения объектов.
Дело не в рамках неткета, а в вас.
24.01.2016, 14:25
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Надо отделить мух от котлет.
Вам нужны след. компоненты (таблицы):
1. Товар
2. Акции
3. Товар, участвующих в акции.

Т.е. делаете универсальную логику - есть список акций, есть список товаров, участвующих в той или иной акции.

Дальше уже решаете как удобней для заказчика - либо при создании акции сразу указывать товары, либо заходить в каждый товар и указывать в каких акциях он участвует (можно делать сразу оба варианта).

Вам понадобится сделать отдельные шаблоны для акций и/или товаров. В которых надо подпилить альтернативные формы добавления/изменения. В самих формах при помощи jQuery делаете возможность добавления в html форму неограниченного кол-ва "выпадающих списков" или других управляющих элементов. Чтобы клиент мог добавить один товар, потом нажать на кнопку добавить еще товар и т.п.

Поле связь с другим объектом - имхо, имеет не юзабельный интерфейс и большинству клиентов не подходит - сложное, поэтому лучше сделать свой вариант.

В поле "действие после добавления/изменения" парсите полученный массив выбранных товаров и запихиваете их в таблицу "Товар, участвующих в акции"

Temet nosce...
24.01.2016, 14:31
Гость
Гость

Цитата:
Спасибо за ответ!
Я уточню: требуется получить выпадающий список для выбора товаров в АДМИНКЕ, не на сайте.

То есть я создаю компонент "Скидка", у него поля "Начало акции (дата), скидка (число), товар(компонент?)". Я в админке кликаю на "товар", и делаю выбор из списка.

Предложенный Вами способ сработает? Если да, то куда мне вставить этот скрипт?

А что значит "в админке кликаю на товар и делаю выбор из списка"???
Этот код у вас не получится просто вставить. Его нужно адаптировать под вашу ситуацию. Разберите этот код и поймите, что за что отвечает и что делает - тогда поймёте что и как сработает.
В этой ветке есть ответы и решения вашего, достаточно простого вопроса. А в поиске по документации и форуму есть ответы на все попутные вопросы, которые у вас могут возникнуть.
24.01.2016, 14:35
Гость
Гость

Цитата:
В самих формах при помощи jQuery делаете возможность добавления в html форму неограниченного кол-ва "выпадающих списков" или других управляющих элементов. Чтобы клиент мог добавить один товар, потом нажать на кнопку добавить еще товар и т.п.

А можно именно об этом немного подробнее?

Спасибо!
24.01.2016, 14:44
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Можно

Temet nosce...
24.01.2016, 17:25
Гость
Гость

Цитата:
Можно

Спасибо за запрос.
198 196 2016-01-24 17:25:51 14408
Описание проекта