網頁好讀版:http://ruby-china.org/topics/7315
## Rails Guide Style
在 [Rails Guide 上面](http://goo.gl/Vysga)有這樣的寫法:
<%= javascript_include_tag params[:controller] %>
or
<%= stylesheet_link_tag params[:controller] %>
但是這樣寫的話,在 production 時一定會報錯,
所以要在 `config.assets.precompile` 加上不少東西,類似:
config.assets.precompile << Proc.new { |path|
if path =~ /\.(css|js)\z/
full_path = Rails.application.assets.resolve(path).to_path
app_assets_path = Rails.root.join('app', 'assets').to_path
if full_path.starts_with? app_assets_path
puts "including asset: " + full_path
true
else
puts "excluding asset: " + full_path
false
end
else
false
end
}
**然而這在 Rails Guide 上面並沒有提醒我們要做這件事情**
(所以等等想貢獻一下提示到 docrails 這個 repo 上)
## Garber Irish Style
然而有另外一種方案:
http://goo.gl/7bu5X
使用起來的話,以 `posts.js.coffee` 為例子:
# posts.js.coffee
SITENAME.posts =
index: () ->
# blablabla
show: () ->
# blablabla
new: () ->
# blablabla
edit: () ->
# blablabla
update: () ->
# blablabla
我覺得很有條理,而且比上述的 Rails Guide style 簡單很多,
如果要共用重複的代碼也可以這麼做:
SITENAME.posts =
index: () ->
this.do_something()
show: () ->
this.do_something()
new: () ->
this.do_something()
edit: () ->
this.do_something()
update: () ->
this.do_something()
do_something () ->
#blablabla
因為管理方便,所以最近的專案都開始使用這個方法了。