Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.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 Rails:Mailer视图的名称与其操作不同_Ruby On Rails_Ruby On Rails 3_Ruby On Rails 4_Ruby On Rails 3.2_Ruby On Rails 3.1 - Fatal编程技术网

Ruby on rails Rails:Mailer视图的名称与其操作不同

Ruby on rails Rails:Mailer视图的名称与其操作不同,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-4,ruby-on-rails-3.2,ruby-on-rails-3.1,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 4,Ruby On Rails 3.2,Ruby On Rails 3.1,我想找到与特定邮件程序视图对应的操作邮件程序。 似乎没有使用mailer视图名称的mailer操作。 在这种情况下,我如何找到mailer操作 p、 我正在处理不是我写的Rails代码。首先检查mailers文件夹,然后找到mailer类,如: class UserMailer < ActionMailer::Base ... end class UserMailer

我想找到与特定邮件程序视图对应的操作邮件程序。 似乎没有使用mailer视图名称的mailer操作。 在这种情况下,我如何找到mailer操作

p、
我正在处理不是我写的Rails代码。

首先检查
mailers
文件夹,然后找到mailer类,如:

class UserMailer < ActionMailer::Base
...

end
class UserMailer

然后视图位于
/views/user_mailer
文件夹中

您可以使用文件名进行搜索,不包括扩展名,就像您有一个视图文件名
order.html.erb
您应该在
app/mailers
目录中使用
order
进行搜索一样

例如,我在
app/mailers
目录中有一个
invoice mailer
,如下所示

class InvoiceMailer < ActionMailer::Base
    def order
        #.... 
    end
end
类InvoiceMailer
我在订单邮件程序的
app/views/invoice\u mailer
目录中有一个
order.html.erb
对应的视图文件。

有一个mailer操作(与视图名称不同),它呈现了视图。向
render
函数发送参数时,该操作没有显式使用视图的名称。该操作将视图的名称作为参数接收,然后将该参数作为参数发送到
render
函数。动作的参数是从模型发送的。这就是为什么我在
mailer
文件夹中找不到视图的名称

我不明白您的答案。例如,如果mailer视图的名称为“foo”,其对应的mailer操作为“bar”,我怎么可能只知道其视图的名称就知道该操作的名称呢?如果视图位于user\u mailer/abc.html.erb中,则mailer操作位于mailers/user\u mailer.rb文件中,在我的示例中,操作名称为abcNot。我有一个名称与任何mailer操作都不匹配的mailer视图。我在所有的mailer文件夹中搜索了这个名字,然后mailer视图在任何地方都没有被使用,如果视图是部分的,那么它可能会在另一个mailer视图中被使用。没有发现任何与视图名称匹配的邮件程序操作,不包括扩展名,您可以通过开发服务器日志跟踪,调用和呈现什么,然后您就可以了解情况了。