2014-06-13 22 views
2

我正在关注指南http://opalrb.org/docs/rails/。第一步去罚款:如何使用Opal生成示例Rails应用程序?

rails new MyHappyApp --javascript=opal 

但是,当我尝试实际产生支架...

rails g scaffold Persion name age:int 
/home/jared/.rvm/gems/[email protected]/gems/opal-sprockets-0.0.1/lib/opal/sprockets/server.rb:81: warning: already initialized constant Opal::Server::Index::SOURCE 
/home/jared/.rvm/gems/[email protected]/gems/opal-0.3.44/lib/opal/server.rb:90: warning: previous definition of SOURCE was here 
    SECURITY WARNING: No secret option provided to Rack::Session::Cookie. 
    This poses a security threat. It is strongly recommended that you 
    provide a secret to prevent exploits that may be possible from crafted 
    cookies. This will not be supported in future versions of Rack, and 
    future versions will even invalidate your existing user cookies. 

    Called from: /home/jared/.rvm/gems/[email protected]/gems/actionpack-3.2.0/lib/action_dispatch/middleware/session/abstract_store.rb:28:in `initialize'. 
    invoke active_record 
    create db/migrate/20140613172929_create_persions.rb 
    create app/models/persion.rb 
    invoke test_unit 
    create  test/unit/persion_test.rb 
    create  test/fixtures/persions.yml 
    route resources :persions 
    invoke scaffold_controller 
    create app/controllers/persions_controller.rb 
    invoke erb 
    create  app/views/persions 
    create  app/views/persions/index.html.erb 
    create  app/views/persions/edit.html.erb 
    create  app/views/persions/show.html.erb 
    create  app/views/persions/new.html.erb 
    create  app/views/persions/_form.html.erb 
    invoke test_unit 
    create  test/functional/persions_controller_test.rb 
    invoke helper 
    create  app/helpers/persions_helper.rb 
    invoke  test_unit 
    create  test/unit/helpers/persions_helper_test.rb 
    invoke assets 
    error opal [not found] 
    invoke scss 
    create  app/assets/stylesheets/persions.css.scss 
    invoke scss 
    create app/assets/stylesheets/scaffolds.css.scss 

有谁知道为什么我得到了“错误蛋白石[未找到]”行?

回答

2

我刚刚测试了这一点,并能够复制错误。

据我所知,opal-rails实际上并没有提供任何资产发电机。遵循Rails惯例,在opal-rails/lib/rails/generators/opal/assets处或其周围应该有assets_generator.rb文件,但源代码中没有这样的文件。

您可以自己将资产生成器添加到项目中(有关示例资产生成器的示例,请参见https://github.com/rails/coffee-rails/blob/master/lib/rails/generators/coffee/assets/assets_generator.rb和相关文件)。

另一种替代方法是在您的application.rb文件中设置config.app_generators.javascript_engine = :js,然后对其进行适当的重命名(例如,对persons.js.rb)。

+0

只是在opal-rails master中推一个简单的视图生成器:https://github.com/opal/opal-rails/commit/88c26bfc1ca9c3c84c3cf2286953c5e9f437aee6 –