7 ms·
Maybe a little off topic... I just started a small project using Angular and Rails, learning both from scratch as I go. I am using Rails as a purely JSON server
by bti 13y ago
Maybe a little off topic... I just started a small project using Angular and Rails, learning both from scratch as I go. I am using Rails as a purely JSON server and handling all the templates in Angular and doing requests over $http. Is it worth using Angular just for the UI niceness and using more of Rails? I need things like authentication and sessions but at its roots it is a single page app. Would any of this new Rails 4 turbolinks stuff help?
- vinceguidry 13y agoIf you want to learn Rails, you should choose a project that will teach you Rails. If all you're going to do with it is serve up JSON, then you're not really going to learn anything and will needlessly overcomplicate your app. Just use something like Sinatra in this case, Sinatra will get out of your way and allow you to focus on the front-end. Using Angular with Rails is definitely a Good Thing(TM), but you really need a large enough project to justify, something both front- and back-end heavy. My current project is large enough to benefit from both, but unfortunately, I chose jQuery and Sinatra. Feeling the pain, for sure.
- steveklabnik 13y agoThere is waaaay more to Rails than the view layer. If 'all you're going to do is serve up JSON', then you'll be using a very large amount of Rails: https://github.com/rails-api/rails-api#why-use-rails-for-json-apis https://github.com/rails-api/rails-api#why-use-rails-for-jso...
- vinceguidry 13y agoHmm. Thanks for this.
- steveklabnik 13y agoThe Rails-API project is here to help! http://github.com/rails-api/rails-api http://github.com/rails-api/rails-api I don't personally know of anyone using Angular + Turbolinks, so I can't answer that.
- playing_colours 13y agoThanks, I'm building Angular.js app and adopting Rails 4 for api backend, Will Rails-API be updated for Rails 4 ?
- steveklabnik 13y agoIt should work today. If it does not, it's a bug. By the way, ActiveModel::Serializers is part of the Rails API project[1], and we'd love some thoughts on how to make it work well with Angular. 1: https://github.com/rails-api/active_model_serializers https://github.com/rails-api/active_model_serializers
- janus 13y agoThe only issue that's been biting me when using ActiveModel::Serializers and AngularJS is that we must manually return the json with the root: false option set, otherwise the AngularJS $resource provider doesn't work correctly.
- lentil 13y agoIf it helps you can make that the default for all your serializers, by doing something like this in an initializer: ActiveSupport.on_load(:active_model_serializers) do ActiveModel::ArraySerializer.root = false ActiveModel::Serializer.root = false end
- danmaz74 13y agoLooks like it already is: https://news.ycombinator.com/item?id=5940484 https://news.ycombinator.com/item?id=5940484
- bti 13y agoWow that looks great. Are there any benchmarks as to how much faster it is compared to a vanilla Rails app?
- 13y ago