2013-04-07 3 views
11

Я использую Angularjs с Rails, и по мере того, как я вникаю в это, я нахожу Rails и Angularjs, каждый из которых воспринимает персонажа как отдельные приложения. Я также экспериментировал с Yeoman, и мне это очень нравится. Я пытался просто использовать yoman для создания приложения в подкаталоге ресурсов моего приложения Rails, но он создает слишком много вещей.Rails Angularjs Development Process

Я подумываю просто разделить его и создав мое приложение Rails с интерфейсом json и создав отдельное приложение Angular, создайте его с помощью Yeoman и поместите готовое приложение Angularjs в подкаталог моих активов и сделайте некоторую перепалку

Означает ли это смысл?

Кто-нибудь еще делает это?

Любые советы?

+0

Именно так я разрабатываю свои угловые приложения. В качестве самостоятельных приложений, которые обращаются к интерфейсу API (REST). – Xesued

+0

Прочтите эту запись в блоге - http://jeff.konowit.ch/posts/yeoman-rails-angular/ – tbrooke

+0

Но я не уверен в том, что вы ставите все в/публичное - и игнорируете конвейер активов - я увидел другой подход, который ставит все, включая шаблоны erb в конвейере активов – tbrooke

ответ

8

Вы правы в том, что backend Rails и frontend SPA не должны разрабатываться как один проект. Они должны разрабатываться самостоятельно, а также проверяться независимо. В идеальном случае не должно быть прямого взаимодействия между ними вне вашего промежуточного env и ваших тестов e2e интеграции.

Другое дело, что вам не нужно размещать свое угловое приложение в вашем общедоступном каталоге. Скорее всего, у вас будет Пассажир/Юникорн/Puma, который будет обслуживать ваше приложение Rails, и они не обязательно будут служить вашему Угловому приложению. Лучше обслуживать их непосредственно с упрощенного веб-сервера, такого как NginX. Они не только намного быстрее, но и более настраиваемы. Это освобождает вас даже от создания CDN для собственного происхождения, чтобы ускорить время отклика вашего сайта.

Генераторы Yeoman выполнены именно для этого. Если бы вы собирались вместе создавать свои SPA и Rails, вам не нужны все эти задачи Grunt для конвертирования LESS/Coffee/Jade и т. Д .; Rails автоматически выполнит их для вас. Они были разработаны для упрощения разработки SPA без полной серверной среды.

Смежные вопросы