Rails/Ruby:是否存在不生成coffeescript文件的主干gem?

Lea*_*cim 5 gem ruby-on-rails backbone.js

不确定这个问题是否属于stackoverflow ....

我正试图在Backbone.js上跟随Ryan Bates Railscast.他使用gem'onbone-on-rails'生成coffeescript文件.即使我完全按照它的原样复制代码,我也会遇到各种奇怪的错误(INDENT错误),而代码却没有工作,正如我所说,我对这些空间非常小心.

有几次,我能够通过完全按照我的方式重新输入代码来解决问题!

我的生产力已经很慢,现在已经停止使用coffeescript了,所以我想知道是否还有另一个不使用咖啡脚本的backbone.js gem

例如,这是我得到的另一个错误消息,即使没有缩进,我也没有从互联网上复制代码.

Error: Parse error on line 2: Unexpected 'INDENT'
Run Code Online (Sandbox Code Playgroud)

另一个例子,handleError函数应该在尝试创建条目的错误(和警告消息)上触发.它适用于RailsCast但不适用于我的应用程序.

createEntry: (event) ->
    event.preventDefault()
    attributes = name: $('#new_entry_name').val()
    @collection.create attributes,
      success: -> $('#new_entry')[0].reset()
      error: @handleError

  handleError: (entry, response) ->
    if response.status == 422
      errors = $.parseJSON(response.responseText).errors
      for attribute, messages of errors
        alert "#{attribute} #{message}" for message in messages
Run Code Online (Sandbox Code Playgroud)

小智 8

万一有人通过谷歌发现这个问题.

# Generate JavaScript
rails generate backbone:install --javascript
Run Code Online (Sandbox Code Playgroud)

来源:Tricks下的backbone-on-rails README


Gra*_*wan 2

Rails 最流行的 Backbone.js gem 是:https: //github.com/codebrew/backbone-rails。它不提供在本机 JavaScript 中生成 Backbone 应用程序的功能。

如果您想用 JavaScript 生成 Backbone 应用程序,可以使用https://github.com/meleyal/backbone-on-rails上的亚军 gem 。只需运行以下命令:

  • 添加gem 'backbone-on-rails'到您的Gemfile
  • bundle install
  • rails generate backbone:install -j
  • rails generate backbone:scaffold user -j

不过,我强烈鼓励您学习 CoffeeScript。一旦确定了语法,您将能够以越来越快的速度开发客户端应用程序。

  • Rails 上的 codebrew 似乎已经退休了?它不再提供最先进的骨干网,这是一个问题。这个模仿就是解决方案:https://github.com/westonplatter/railsy_backbone (2认同)