Создание элемента другого контроллера

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО

Ajax RenderJSON возможно модальное окно

#1 20 октября 2015 в 10:24
Добрый день перерыл всё что мог на тему AJAX renderJSON и даже в модальные окна посматривал но понять не смог поэтому и создаю этот вопрос.
У меня есть контроллер ingredients у него есть actions (ingredient- вывод одного ингредиента, add, edit, delete). Есть модуль рецептов recipes с примерно таким же наборов экшинов. Задача состоит в том 1) чтобы при создании нового рецепта в нем создавать ингредиенты если подходящего нет в выпадающем списке 2) ингредиентов будет несколько как сделать так чтобы при добавлении одного появлялась возможность добавлять ещё и ещё ингредиентов.
#2 20 октября 2015 в 12:35
Не вижу вообще никакой взаимосвязи в ваших предложениях.
При чем тут ajax render json и то, что вам надо? Вам нужно готовое решение? Или же вам нужна помощь в решении каких то проблем? Если первое, то вам в раздел ищу исполнителя. Если второе, то опишите свою проблему. Что конкретно у вас не получается, как вы это делаете, какая ошибка возникает.
#3 20 октября 2015 в 15:16


При чем тут ajax render json и то, что вам надо?

Rossoman
Ajax при том, что добавление ингредиента должно происходить на той же странице где я вижу сам рецепт без презагрузки страницы.


Или же вам нужна помощь в решении каких то проблем?

Rossoman
Да помощь нужна и возможно не по конкретному решению а в целом понять не могу как работает AJAX в инстане. Поэтому такая сумбурная формулировка. Может кто нибудь привести простой наглядный пример для чайника.
#4 20 октября 2015 в 17:21

Может кто нибудь привести простой наглядный пример

Luk
Простой пример — авторизация в модальном окне, она же по ссылке site.ru/auth/login
#5 20 октября 2015 в 20:17
Loadырь, Возможно TC имел ввиду, что и главное где происходит когда нажал на кнопку, куда идёт запрос, где он обрабатывается и куда возвращается. smileLuk, если хотите понять это нужно сделать самому. Я бы помог, но сам не знаю, юзаю 1.10.6. Приходите чем смогу помогу. smile
#6 21 октября 2015 в 14:40
Lora, вы правы я не могу понять саму логику. И хорошего доходчивого примера нет. Спасибо автору за те туториалы что он выложил, но вопросы AJAX и связи с Java script там вообще не отражены, а как я думаю что ни одно более менее зрелое приложение без этого существовать не может.
#7 21 октября 2015 в 14:53
Luk, AJAX — не вижу смысла пояснять что это
renderJson, а точнее cmsTemplate::renderJSON() — это передача обработанных сервером данных в шаблон, в формате json
Конкретно в вашем случае, нужно сделать примерно следующем образом. Вывести ссылку на добавление нового ингридиента, обрабатывать данную ссылку js скриптом, а именно при клике отправлять аякс запрос на экшн добавления ингридиента. Соответсвенно в экшене должна быть проверка на ajax.
Если запрос пришел через аякс, то что то делаем и возвращаем данные в формате json, если нет то возвращаем 404.
Полученные от сервера данные уже обрабатываем в нашем js скрипте и делаем с ними то что нужно
#8 21 октября 2015 в 14:56

Может кто нибудь привести простой наглядный пример для чайника.

Luk
В самом движке примеров полно. Стоит лишь только поискать и разобраться)
#9 21 октября 2015 в 15:49

И хорошего доходчивого примера нет

Luk
А его и не будет. Это вопрос не системы, а языка. Если хотите понять придётся собирать "по крупицам".
#10 22 октября 2015 в 16:47
Lora, Обещаю если разберусь опубликую.
#11 16 ноября 2015 в 09:52
Огромное спасибо Rossoman, вопрос возник из за недостатка знаний Java Script и отсутствия опыта работы с JSON. А примеров действительно очень много. Для таких же начинающих как я поясню есть функция RenderJSON — Которая просто возвращает данные в формате JSON тому кто обратился к данному экшену.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.