在Rails 3中的flash消息中呈现部分

时间:2011-12-05 13:23:53

标签: ruby-on-rails ruby-on-rails-3 partials

所以当用户成功上传文件时,我只是想在我的一条Flash消息中添加一些社交网络共享链接(facebook,g +,addthis等)。我将所有代码都放在一个部分,所以我想我可以渲染它,但我得到一堆“/ n”和html_safe不起作用。

这是我的部分:

 <div class="share_buttons">
    <div class="addthis_toolbox addthis_default_style addthis_32x32_style">
      <a class="addthis_button_facebook"></a>
      <a class="addthis_button_twitter"></a>
      <a class="addthis_button_stumbleupon"></a>
    </div>
    <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=xa-4e8b938653ac0cd3"></script>
  </div>

<script type="text/javascript">
reddit_target='tattoos'
</script>
<script type="text/javascript" src="http://www.reddit.com/static/button/button1.js"></script>

<% content_for :jquery do %>
    <%= javascript_tag do %>
    $(document).ready(function() {
      $(".share_buttons a").live("click", function() {
        $.ajax({
          url: '/index/share?id=<%= @tattoo.id%>',
          type: 'post'
        });
          return false;
      });
    });
    <% end %>
<% end %>

在我的控制器中我尝试了这个:

flash[:success] = "Thanks, feel free to share that out! #{render :partial=> /shared/social_buttons}“

1 个答案:

答案 0 :(得分:13)

需要将其渲染为字符串

flash[:success] = "Thanks, feel free to share that out! #{render_to_string :partial => '/shared/social_buttons'}"