新手问题 Rails4 项目中如果我需要加入一个.js asset 应该放到哪里呢

n00b1 · 2013年11月14日 · 最后由 hxplove01 回复于 2013年11月14日 · 2394 次阅读

我希望在一个表单 form_for 页面加入一个 jquery 的 datetime picker,请问我应该将这个单独的 js 文件放置在哪里并如何在_form.html.rb 中加以引用呢?问题很初级...

#_form.html.rb
#
<%= form_for @post do |f| %>
  <div class='control-group'>
    <%= f.label :starts_at %>
    <%= f.text_field :starts_at, class: "hasDatepicker" %>
  </div>
<%= f.submit(@post.new_record? ? "Submit" : "Update", class: "btn btn-primay") %>

js 文件如下,下载了放入 app/assets/javascripts? http://puna.net.nz/client/timepicker/js/tm.js http://puna.net.nz/timepicker.htm#

vendor/assets/javascripts

application.js

//= require xxx

or

_form.html.rb

<%= javascript_include_tag "xxx" %>

assets 启用时会自动加载 app 下 assets 目录里面的所有文件,你可以放在 app/assets/javascripts,也可以放在vendor/assets/javascripts,或者是你自己定义的目录,如果你只在一个页面会用到这个js的话,建议直接在erb中使用楼上说的javascript_include_tag,这样的话只在这一个页面会加载这个文件。但是要注意在发布production时需要将该文件加入到precompile。如果想简单一件,直接在application.js中require,在开发环境下因该可以直接看到该js了:)

需要 登录 后方可回复, 如果你还没有账号请 注册新账号