-1

更新

错误是rails找不到root_url

访问 <%= link_to root_url, root_url %> 并转到您的收件箱以获取更多信息。

为了快速修复,我不需要将用户发送到 root_url 只是通知用户转到应用程序。我将代码更改为:在邮箱电子邮件视图上

Visit **messages** and go to your inbox for more info.

问题

我使用我的 rails 4 应用程序进行了设计。当我发送消息时,我正在关注示例邮箱应用程序,但出现错误:

`error undefined local variable or method `root_url' for #<#<Class:0x007ffe0b881678>:0x007ffe0b068298>`

我有修复让它工作的东西

  • 得到通过电子邮件向用户发送消息的表单
  • 用户可以发送和回复
  • 标记为删除
  • 查看收件箱、发件箱和垃圾箱

这是我的步骤

  • 安装 gem -v 0.12.1
  • rails g 邮箱:安装
  • 运行迁移
  • 使用示例应用程序中的代码(控制器、视图、路由)
  • 添加到我的 user.rbacts_as_messageable 和

对话控制器

  before_filter :authenticate_user!
  helper_method :mailbox, :conversation

  def index
        @inbox ||= current_user.mailbox.inbox.paginate(:page => params[:inbox], :per_page => 5  )
        @sentbox ||= current_user.mailbox.sentbox.paginate(:page => params[:sentbox], :per_page => 5    )
        @trash ||= current_user.mailbox.trash.paginate(:page => params[:trash], :per_page => 5  )
  end
  def create
    recipient_emails = conversation_params(:recipients).split(',')
    recipients = User.where(email: recipient_emails).all

     conversation = current_user.
      send_message(recipients, *conversation_params(:body, :subject)).conversation

    redirect_to :conversations
  end

形式

<%= bootstrap_form_for :conversation, url: :conversations do |f| %>
    <%= f.text_field :recipients%>
    <%= f.text_field :subject%>
    <%= f.text_field :body %>
    <div class="form-actions">
      <%= f.primary "send" %>
      <%= submit_tag 'Cancel', type: :reset, class: 'btn btn-danger' %>
    </div>
  <% end %>

看法

<% @inbox.each do |conversation| %>
<%= conversation.originator.username%>
<%= link_to  raw(truncate(strip_tags(conversation.subject), :length => 15)), conversation_path(conversation) %>
 <% end %>
4

1 回答 1

1

好的,解决了这个问题。发生的事情是邮箱邮件程序正在寻找 root_url。Rails 4.1 不会生成视图,只是从源代码中复制文件并且工作得更好。

只需在此处更改那部分代码。

查看/邮箱/所有这些文件 message_mailer notification_mailer

改变这个

Visit <%= link_to root_url, root_url %> and go to your inbox for more info.

对此

Visit **messages** and go to your inbox for more info.

感谢这个家伙至高无上的存在7 。在邮箱问题页面上

于 2014-06-21T06:45:44.817 回答