Я заполнил API с помощью Rails и теперь хочу смонтировать внешний фреймворк, такой как Angular, на Rails. Я видел людей, использующих для этого Gulp или Grunt, но все же не на 100%. Хотелось бы увидеть, как эксперты эффективно объединяют Angular и Rails. Очень признателен!
Как лучше всего установить Angular на Rails 4?
Ответы (2)
Получить AngularJS на Rails довольно просто, особенно если вы используете Rails в качестве источника API.
- Добавьте драгоценные камни ниже в свой Gemfile:
gem 'bower-rails' gem 'angular-rails-templates'
Затем выполните
bundle install
, чтобы установить драгоценные камни.Создайте папку в папке
app/assets
под названиемtemplates
. Здесь вы будете хранить свои html-шаблоны AngularJS.Поместите package.json и bower.json в корень проекта.
Создайте папку с именем
client-test
, так как у вас уже есть папкаtest
для API рельсов — верно?!Убедитесь, что ваш
package.json
правильно ссылается на вашу папкуclient-test
.
Соответствующий раздел scripts
должен выглядеть так:
"test": "node node_modules/karma/bin/karma start client-test/karma.conf.js",
"test-single-run": "node node_modules/karma/bin/karma start client-test/karma.conf.js --single-run",
- Для тестирования вам понадобится использовать
karma-ng-html2js-preprocessor
для преобразования шаблонов в папку app/assets/templates.
Вот и все. Надеюсь это поможет!
Angular js — это фреймворк javascript для создания одностраничного приложения. когда вы думаете использовать его с рельсами, ваш интерфейс будет угловым js, а серверная часть будет postgresql или mysql, а для подключения базы данных к интерфейсу у вас должны быть рельсы для обработки запросов, поступающих со стороны пользователя. Ответ данных всегда будет JSON. вам просто нужно обрабатывать данные JSON спереди.
Это означает, что ваш контроллер просто даст ответ JSON. для этого у вас должны быть только контроллер и модель.
Так что взгляните сюда, это проведет вас через привязку angular js + rails, это хорошая комбинация для использования и любовь к использованию когда-либо.
Как интегрировать представления Rails с angularjs ng-view?
https://thinkster.io/angular-rails/