Разработка веб-приложений с Grails - понятия не имею, как это работает на самом деле - PullRequest
5 голосов
/ 23 июня 2011

Я действительно новичок в Grails, и я пытаюсь понять, как это работает. Я сделал несколько уроков и написал пример приложения с подключением к базе данных mysql. У меня есть три таблицы и три предметных класса и три контроллера, использующих def scaffold = true. Таким образом, представления генерируются автоматически. Теперь я могу добавлять, удалять и ... данные в моих таблицах. Это работает.

Но теперь я не знаю, как дальше. Я имею в виду, что создавать и заполнять эти таблицы приятно, и приятно, что это возможно так быстро, но ... Теперь я действительно хочу разработать приложение! Обычно я работаю с Spring Framework, Spring Security, Spring MVC и т. Д. Для создания веб-приложений. Там все логично. У меня есть поступающие запросы, отображение на контроллеры, классы, которые работают с запросами, возвращенные ответы, отрисованные jsps .... логические!

В Grails я даже не знаю, с чего начать для реального приложения! Все учебники, которые я нахожу, показывают одно и то же: настройка этих таблиц и возможность их заполнять, хорошо, красиво - но после этого?

Где я могу сохранить "main.gsp". Нужен ли для этого контроллер? Как приложение при запуске перенаправляет на «main.gsp».

Где я могу определить «реальную логику» - я хочу разработать что-то вроде «вопросы с несколькими ответами - попробуйте выбрать правильные ответы» - приложение. Ну, я должен признать, я действительно не знаю, с чего начать. И я не вижу использования контроллеров и возможности добавлять данные в мои таблицы в моем приложении. Это для администраторов, но не для пользователей.

Может ли кто-нибудь дать мне подсказку, как продолжить? Или, может быть, кто-то знает хороший учебник, который не посвящен «настройке классов домена, контроллеров с помощью scaffold, добавлению данных в вашу базу данных» - я не вижу в этом особого смысла.

Спасибо за вашу помощь! : -)

[ПРАВИТЬ] Спасибо за ответы! Услуги, это было именно то, что я искал. Я думаю, я просто должен познакомиться с ним поближе. Уроки просто смутили меня, но теперь я понимаю лучше!

Ответы [ 4 ]

6 голосов
/ 23 июня 2011

Если вы знакомы с Spring и Spring MVC, концепции в Grails не должны вас удивлять.Grails на самом деле использует Spring MVC под прикрытием.

Grails может автоматически генерировать классы, контроллеры и представления Домена, как вы пробовали в руководствах.Это должно дать вам начальную точку для вашего приложения.Этого достаточно для учебников.Однако для реальных приложений у вас не всегда может быть от 1 класса домена до 1 контроллера и 1 набора представлений.Возможно, вы не всегда выполняете операции CRUD в этом домене.Для этого вам нужно копнуть немного глубже в Grails.Вы можете делать все, что ранее делали в Spring MVC в Grails!

Вот несколько ссылок, которые помогут вам начать работу.

Если вы пытаетесь лучше понять «поток».Как запросы отображаются на контроллеры / представления, проверьте UrlMappings.groovy в вашем каталоге конфигурации.Документы по этому вопросу находятся здесь: URLMappings

Если вы хотите лучше понять контроллеры, проверьте это: Контроллеры .Имейте в виду, что ваш контроллер не должен работать на моделях домена.Это просто соглашение по умолчанию.Они работают аналогично контроллеру Spring MVC.

Модели в Grails просты.Обычно контроллеры просто возвращают карту предметов, которые вы хотите вернуть.В Spring MVC вы часто создаете объект Model, чаще всего в Grails вы возвращаете что-то вроде [name: bean1, name2: bean2].Это позволяет вам легко получить эти две бобы в противостоянии.

3 голосов
/ 23 июня 2011

Начните с «Grails в действии».В первой главе вы узнаете подробности о создании примера приложения CRUD, но, читая дальше, вы лучше поймете поток грааля.Сервисы должны использоваться для логики, Контроллеры используются для делегирования.Вам не нужно явное сопоставление xml, как это делается в Struts, Spring, потому что все здесь работает на конвенции.

2 голосов
/ 23 июня 2011

Вот информация о контроллерах: Контроллеры

Также вы можете использовать это же руководство для поиска информации о других вещах.Например, о том, где разместить бизнес-логику, вы должны прочитать в главе Уровень обслуживания .

1 голос
/ 16 июля 2013

Чтение Начало Groovy, Grails и Griffon Вишал Лейка, Кристофер М. Джадд, Джозеф Фейсал Нусайрат и Джим Шинглер.На протяжении всей книги они создают настоящее веб-приложение с моделями, доступом к базе данных, аутентификацией, CSS, шаблонами и макетами и многим другим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...