代码之家  ›  专栏  ›  技术社区  ›  Arkan

使用Rails3进行远程操作的Flash消息

  •  1
  • Arkan  · 技术社区  · 14 年前

    我有一个愚蠢的问题。 我被困在这个问题上,我不知道如何解决它:)

    我有一些基本的操作,比如创建和销毁评论。我添加了remote=>true属性。

    我的操作是用create.js.haml和destroy.js.haml呈现的。

    $(".comments").prepend("#{escape_javascript(render(@comment))}");
    $("#comments_box .form #new_comment").get(0).reset();
    

    在我的控制器里我有一个

    flash[:notice] = 'Comment created'
    

    我想将flash消息更新到布局中…… 在我的布局中,我有:

     - flash.each do |name, msg|
            = content_tag :div, msg, :id => "flash_#{name}"
    

    从jquery(view)创建或更新flash消息的更好方法是什么?

    谢谢)

    1 回复  |  直到 14 年前
        1
  •  4
  •   Arkan    14 年前

    我就这样解决了我的问题:

    在我的布局中,我添加了:

    #flash_messages
      = render :partial => 'layouts/flash', :locals => { :flash => flash }
    

    闪存部分包含:

    - flash.each do |name, msg|
      = content_tag :div, msg, :id => "flash_#{name}"
    - if defined?(flush_flash) and flush_flash == true
      - flash.clear
    

    在我的J.Haml

    $("#flash_messages").html("#{escape_javascript(render(:partial => 'layouts/flash', :locals => {:flash => flash, :flush_flash => true}))}");
    

    谢谢;