说到这个,我是个笨蛋,我完全被困住了。在railscast 103之后,我正在尝试使用 rails 3.2.3 实现公告系统
本教程使用原型,我不知道如何将其转换为 jquery。
在我的application.html.haml
我有这个:
%h3{:id => "alert", :class=>'alert-danger fade in', :style=>"padding: 10px;"}
- unless current_announcements.empty?
#announcement
- for announcement in current_announcements
%ul{:class=>'unstyled'}
%li
= h announcement.message
= link_to "Hide this message", :url => "/javascripts/hide_announcement.js"#, :remote => true
单击隐藏按钮应该删除视图,同时还将 设置announcement_hide_time
为当前时间。我的 javascript 控制器中有这个:
class JavascriptsController < ApplicationController
respond_to :js
attr_accessible :announcement_hide_time
def hide_announcement
session[:announcement_hide_time] = Time.now
end
end
这在我的路线中:
match ":controller/:action.:format"
现在的问题是,在 railscast 中,它说我需要 hide_announcement.js.rjs 中的以下内容
page[:announcement].hide
我在 hide_announcement.js.erb 中将其替换为:
$("#announcement").hide()
但是当我单击该链接时,我在控制台中没有收到任何错误,并且消息也没有被删除。