Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/52.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 模型中的呈现形式:未定义的方法“主机”,带有#端口';零级:零级_Ruby On Rails_Rails Activerecord - Fatal编程技术网

Ruby on rails 模型中的呈现形式:未定义的方法“主机”,带有#端口';零级:零级

Ruby on rails 模型中的呈现形式:未定义的方法“主机”,带有#端口';零级:零级,ruby-on-rails,rails-activerecord,Ruby On Rails,Rails Activerecord,我正在渲染模型中包含表单的部分。 这也许不是最明显的事情,但我还是在努力 理论基础: 首先让我来说明我为什么要这么做(如果你有其他方法的建议,请随意): 我正在为我的应用程序的用户构建一个简单的消息功能,这样当他们需要执行某个操作时,就会通过消息通知他们,消息中包含要执行的数据和操作 例如:用户收到加入给定组的邀请。邀请包含组所有者的名称、组名称和两个接受或忽略邀请的按钮 守则: 以下是消息模型: class Message < ActiveRecord::Base def self

我正在渲染模型中包含表单的部分。 这也许不是最明显的事情,但我还是在努力

理论基础: 首先让我来说明我为什么要这么做(如果你有其他方法的建议,请随意):

我正在为我的应用程序的用户构建一个简单的消息功能,这样当他们需要执行某个操作时,就会通过消息通知他们,消息中包含要执行的数据和操作

例如:用户收到加入给定组的邀请。邀请包含组所有者的名称、组名称和两个接受或忽略邀请的按钮

守则: 以下是消息模型:

class Message < ActiveRecord::Base

  def self.group_invitation(group, user)
    @m=Message.new({
                     :status => :unread,
                     :from_user_id => group.owner.id,
                     :to_user_id => user.id,
                     :type => :group_invitation,
                     :title => "Invitation to the group: #{group.name}.",
                     :message => ActionController::Base.new.send(:render_to_string,
                                :partial => 'messages/group_invitation',
                                            :locals => {:group => group,
                                                        :user => user}
                                                                 )
                  })
    @m.save!
  end
end
我假设我必须在某个地方包含/要求urlherlpers的定义,以便渲染生成正确的路径等。但我的尝试没有取得任何成功

所以,如果有聪明人在看这个问题,也许他会很乐意给我一些解决这个问题的想法


许多人期待着感谢

事实上,当我试图呈现“link\u to”语句时,我也会遇到同样的错误。我将朝这个方向进一步挖掘;-)我观察到,在构建
请求
对象上的url时(在
操作控制器/meta/url\u for
中),调用了
主机与\u端口
方法。我假设我必须以某种方式提供这个
请求
对象。
<div>
  <h1> Invitation to <%= group.name %> </h1>
  <p>
    Hello <%= user.name %>,
  </p>
  <p>
    You have been invited by <%= group.owner.name %> to join the group
    <%= group.name %>.
  </p>
</div>

<div>
Please take one of the following action:
<br/>
     <%=  m= group.memberships.find_by_user_id(user.id)
       m.status = :validated
       render 'memberships/form', :membership => m, :method =>
       :put, :label => "Accept" %>
<br/>
    <%= render 'memberships/form', :membership => m, :method =>
      :delete, :label => "Ignore" %>
</div>
<%= form_for membership, :html => {:method => method} do |f| %>
 <%= f.hidden_field :group_id %>
 <%= f.hidden_field :user_id %>
 <%= f.hidden_field :status %>
 <%= f.submit :value => label %>
<% end %>
undefined method `host_with_port' for nil:NilClass