【问题标题】:Laravel 4: which events does it support / have?Laravel 4:它支持/有哪些事件?
【发布时间】:2013-02-19 04:42:13
【问题描述】:

我看到了this SO question 关于 Laravel 事件的信息,但它们适用于 Laravel 3。我已经尝试了所有这些,但它们都不起作用。这是我在global.php 中的代码:

$event_names = array("laravel.done", "laravel.log", "laravel.query", "laravel.resolving", "laravel.composing", "laravel.started", "laravel.controller.factory", "laravel.config.loader", "laravel.language.loader", "laravel.view.loader", "laravel.view.engine", "view.filter", "eloquent.saving", "eloquent.updated", "eloquent.created", "eloquent.saved", "eloquent.deleting", "eloquent.deleted");
foreach ($event_names as $event_name) {
    echo "Listening to {$event_name}<br/>";
    Event::listen($event_name, function($event) {
        var_dump($event);
        exit;
    }); 
}

它只是开始监听,但没有触发任何事件。我曾尝试使用Event::fire() 自行解雇他们,它确实有效,但显然这不是我想要的。

【问题讨论】:

    标签: laravel laravel-4


    【解决方案1】:

    到目前为止,我在 Laravel 4 中发现了以下事件:

    auth.login
    auth.logout
    
    artisan.start
    
    illuminate.query
    illuminate.log
    
    eloquent.updating
    eloquent.updated
    eloquent.creating
    eloquent.created
    
    locale.changed
    
    composing: {viewName}
    

    我会在发现更多信息后更新此列表

    【讨论】:

    • 嗯,文档中流行的 IoC 呢,它不能处理不同的事件实现吗?即使不可能,我认为应用程序触发事件的实际好处(!)远大于意识形态上的缺点。
    • 抱歉 - 我做了更多调查 - 查看我修改后的答案
    【解决方案2】:

    我在 laravel wiki 中找到了这个列表:http://wiki.laravel.io/Event_List_(Laravel_4)

    【讨论】:

    • 该列表目前(2015 年 1 月 22 日)不完整。试图获得一个帐户来更新它,但手动批准需要时间。如果在此之前有人感兴趣,我已经编制了一个(更多)完整列表。我会在文章更新后尝试在这里发表评论。
    猜你喜欢
    • 2012-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    • 2011-05-11
    • 2016-09-20
    • 1970-01-01
    相关资源
    最近更新 更多