[英]Possible to specify event listeners for environment?
我正在制作我的第一个laravel应用程序,并且我有一个UpdateLoginInfo类,该类更新用户的last_login值并增加他们已登录的次数。我在auth.login期间在EventServiceProvider中监听它,如下所示:
class EventServiceProvider extends ServiceProvider
{
protected $listen = [
'auth.login' => [
'App\Events\UpdateLoginInfo',
],
];
它的运行效果很好,但是在测试时,能够以不同的用户身份登录而不影响他们的数量会很好(但是我将相同的数据库用于沙箱和生产)。 我想知道是否有一种方法可以指定环境,以便侦听器仅在生产环境中发生,而在我的沙箱中被忽略-这是要尝试做的合法事情(如果是,怎么做)? 还是丑陋,我应该考虑为测试环境创建/使用另一个数据库?
在增加计数之前,请使用环境进行检查。 请参阅主要文档http://laravel.com/docs/5.1/#basic-configuration
if (App::environment('local')) {
// The environment is local
}
if (App::environment('local', 'staging')) {
// The environment is either local OR staging...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.