在Laravel 4中我想使用代表来自我的数据库的Event
的模型。因此,在app/models
我有我的Event
模型,扩展雄辩。如何在Laravel中命名空间模型以免与现有类冲突?
但是,Laravel 4已经有一个Event
类,用于管理应用程序生命周期内的事件。
我想知道的是,我如何正确命名空间我的Event
模型,并以不会与现有的Event
类冲突的方式访问它。
在Laravel 4中我想使用代表来自我的数据库的Event
的模型。因此,在app/models
我有我的Event
模型,扩展雄辩。如何在Laravel中命名空间模型以免与现有类冲突?
但是,Laravel 4已经有一个Event
类,用于管理应用程序生命周期内的事件。
我想知道的是,我如何正确命名空间我的Event
模型,并以不会与现有的Event
类冲突的方式访问它。
您只需要像往常一样对其应用名称空间。所以,例如。
<?php namespace Models;
use Eloquent;
class Event extends Eloquent {
}
之后,应正确设置你的composer.json
以便它加载您的模型。您可以使用classmap
或psr-0
进行此操作,具体取决于您是否使用目录结构跟踪PSR-0。
我很确定models
目录已经映射。
编辑
正如你必须运行composer dump-autoload
的评论中提到。
多达我有关于使用命名空间的研究,因为我想用那些PHPDocumentar,它不可能里面添加两次的命名空间,如laravel已经将那些对你来说,如果我们懂得基本的问题,为什么我们使用命名空间
1-许多库使用相同的类名,所以我们使用命名空间来区分它。
2 - 如果你想使用的命名空间,那么你应该走出应用的范围,意味着是你的供应商的文件夹这种东西。
享受
与在其他地方使用命名空间的方式相同吗?只需要注册它。 – itachi 2013-04-20 03:57:38
这是否意味着我根据它所在的目录命名空间?例如'namespace Model',然后使用'Model \ Event'访问它? – Dwight 2013-04-20 03:59:30
是的。该文档在模型部分中有一个示例。 – itachi 2013-04-20 04:02:40