草庐IT

模型剪枝

全部标签

php - Doctrine 2.0 是否像 Propel 1.5 那样预先生成模型类?

Propel可以根据模式文件生成类。一些生成的类是:对象(例如用户)对等点(例如UserPeer)查询(例如UserQuery)对象类(用户)包括所有属性的getter和setter。例如$user=newUser();echo$user->getEmailAddress();我的问题是:Doctrine2.0可以做到这一点吗?它是否生成基类并添加getter和setter? 最佳答案 是的,Doctrine2确实支持类生成的模式,我更喜欢YAML而不是XML,所以这里是覆盖http://www.doctrine-project.o

php - CodeIgniter 模型设计

我有一个用户模型,它具有用户名、密码、名字、姓氏、地址等属性在模型上设置这些属性以便我可以插入或更新数据库的最佳方法是什么?我应该添加、更新..ect方法来获取整个参数列表还是只获取一个数组。我的问题是:如何在CI中编写一个包含上述字段的简单用户模型? 最佳答案 一种方法是使用CodeIgniter'smodels我觉得这很烦人。CodeIgniter将只提供一个Db对象,您可能最终会查询数据库。我使用另一种方式,我使用CI项目Propel,这是一个ORM(基本上是你想做的)并且集成起来相对容易,你可以得到一个integration

php - 模型逻辑和服务层逻辑

我最近发现,我正在跨应用程序的多个层进行编码以实现一些非常简单的事情。例如$domain=newApplication_Model_Domain();$table=$domain->getMapper()->getDbTable();$row=$table->find($id)->current();$row->delete();这一切都可以在我的服务层的delete()方法中轻松完成。但是,我一直在将此功能转移到模型映射器中:#servicelayer$domain=newApplication_Model_Domain();$domain->getMapper()->delete(

php - 缓存 API/接口(interface)以用作模型

我正在用PHP编写缓存API。它完成了我需要它做的所有事情,但我正在将它贡献回一个项目,其他人可能会用它做其他事情。在代码审查中,我被要求确保它具有缓存API中期望的所有标准方法。我查看了PHP的MemcacheAPI、Zend的缓存API和其他一些API,但似乎并没有真正的标准。他们当然不同意方法的名称(read()与get()与等等)。那么,我是否应该确保我可以进行CRUD操作并结束工作?是否加入flush()以取得良好效果?或者是否有一种标准通用模型可用于缓存API?或者我应该直截了本地坚决主张我们不应该在真正需要之前实现任何东西吗? 最佳答案

php - 实现 3 结构模型(域对象、数据映射器和服务)的一些不确定性

正如标题所暗示的,我在实现3结构模型(域对象、数据映射器和服务)时遇到了一些小问题。过去,当有人在我的网站上注册时,我会简单地做$user->register($firstName,$lastName,$emailAddress,$username...);并且该方法将按这样的步骤运行1.Checkiftheformsentwasvalid.2.Checkifalltherequiredfieldswerefilled.3.Checktheifthelengthsofstringswerevalidandtherangeofintegersetc.4.Checkiftheinputis

php - 模拟静态 Eloquent 模型方法,包括 find()

我一直在关注一般的Mockery和PHP-Unit教程-包括JeffreyWay介绍的使用PHP-Unit和Mockery测试Laravel。然而,对于这个应用程序——我们可以接受对Eloquent的依赖,而不是创建一个存储库类。我们能够很好地模拟Widget模型的实例方法。但是,我们正在使用Route:model绑定(bind),我承认我不确定在测试Controller的show($widget)方法时如何模拟模型的find()方法。我读过https://github.com/padraic/mockery/wiki#mocking-public-static-methods文档,并

php - 在模型中使用查询的 Codeigniter 分页

我想使用codeigniter进行分页,但没有成功。在我的模型中我这样使用functionshow_kegiatan($offset,$limit){$query=$this->db->query("SELECTkegiatan.*,lk.*,fakultas.*,count(kegiatan_review.reviews)AS'Komentar',fakultas.*FROMkegiatanINNERJOINlkONlk.id_LK=kegiatan.id_LKINNERJOINfakultasonfakultas.id_fakultas=lk.id_fakultasLEFTOUTE

php - 在观察者中聆听 Eloquent 模型事件

我无法在我的事件处理程序中找到用于监听eloquent事件的语法。我这样订阅了我的观察者Event::subscribe('Animekyun\Handlers\Events\EloquentEventHandler');这个观察者是self处理的,是这样实现的:namespaceAnimekyun\Handlers\Events;useIlluminate\Events\Dispatcher;classEloquentEventHandler{publicfunctiononEpisodeSave($event){dd('test');}publicfunctionsubscribe

php - 类型提示 Eloquent 模型

我正在尝试编写好的代码,其中一部分是类型提示,以便更轻松地完成工作并强制执行期望。这可能看起来有点做作,但对我来说更像是一个概念证明。我正在编写一个类来获取在选项卡上拆分的TSV文件并插入到我的模型中。在我的构造函数中,我要求:Illuminate\Database\Eloquent\Model我通过的:new\App\Model()最后是错误响应:instanceofApp\Modelgiven显然我做错了什么,但我不想强制使用App\Model,我怎么能笼统地要求一个Eloquent模型?编辑更多信息:为了更清楚,我使用的是Laravel5,模型是通过artisanmake:mod

php - 将 Eloquent 模型绑定(bind)到服务容器

有人用IoC容器绑定(bind)Eloquent模型吗?例如,我有一个用于我的帐户和类别Eloquent模型的存储库。Account模型与Categories有hasMany关系。类别存储库将帐户存储库注入(inject)到构造函数中。相反,我想像这样注入(inject)一个实际的帐户模型......在我的服务提供商中:$this->app->bind(App\Models\Account::class,function($app){return(Auth::check())?Auth::user()->account:null;});在我的仓库中useApp\Models\Accou