0
我有一个玩具webapp,其中我的用户的用户名也是他们的电子邮件地址(典型的“<username>@<host>
”格式)。我试图提供一种方法来计算模型中用户的电子邮件地址为User#email
,但我需要访问URL()
帮助程序方法来完成此操作,这在“模型”模块中不可用。我应该如何在模型中定义用户的电子邮件?
有没有一种方法可以从模型内部访问Web应用程序绑定的根路径?
我有一个玩具webapp,其中我的用户的用户名也是他们的电子邮件地址(典型的“<username>@<host>
”格式)。我试图提供一种方法来计算模型中用户的电子邮件地址为User#email
,但我需要访问URL()
帮助程序方法来完成此操作,这在“模型”模块中不可用。我应该如何在模型中定义用户的电子邮件?
有没有一种方法可以从模型内部访问Web应用程序绑定的根路径?
URL()
使用请求来确定主机,但是您的模型也可以在请求之外使用(例如在控制台中)。在这种情况下,我建议将它存储在全球的某个地方:
module App
EMAIL_HOST = "hello.com"
end
module App::Models
class User
def email
"#{username}@#{App::EMAIL_HOST}"
end
end
end
有什么方法可以通过另一层“神圣”根,例如Rack,然后呢?我试图使用ENV,但它不提供给模型。 – harbichidian 2013-03-01 00:19:30
不是。如果电子邮件地址取决于请求,那么它不属于模型。改为创建一个帮手。 – 2013-03-08 08:32:52