【发布时间】:2017-05-29 22:23:25
【问题描述】:
看来你可以在 Laravel 中编写工厂。
根据文献: https://laravel.com/docs/5.3/database-testing#writing-factories
出现与模型/数据库相关的工厂。
是否可以为非模型相关编写工厂?
例如两个类:
class Car {
public function drive() { }
}
Class Bike {
public function ride() { }
}
而不是使用(new Car)->drive(),我想使用TransportFactory 来对类进行分类。
【问题讨论】:
-
如果我理解正确,您正在寻找Mockeries
-
@apokryfos 不,我不想嘲笑。我想使用像
Transport::build('car')->drive();这样的工厂模式,我想知道 Laravel 是否支持这样的东西。 -
汽车是否有依赖关系,或者它会直接评估为
(new Car)->drive()? -
@I'll-Be-Back 如果您的意思是工厂模式,那么不,您必须自己实现。 Laravel 使用 Service Container,它的工作方式不同,但提供了相似(如果不是更好)的结果。但是请注意,您链接到的工厂并不是您认为的那样。那是为了数据库测试。
标签: php laravel laravel-5.3