paulvl/magicmodel

Eloquent 扩展模型,具有额外功能。

1.0.0 2015-02-13 04:26 UTC

This package is auto-updated.

Last update: 2024-09-12 04:16:05 UTC


README

此 Laravel 扩展包为 Eloquent 提供了扩展功能。

安装

Laravel 4.2

  1. 首先,通过 Composer 安装此包。编辑您的项目文件 composer.json 以要求 paulvl/magicmodel

     "require-dev": {
     	"paulvl/magicmodel": "dev-master"
     }
    

    不支持 Laravel 5。

  2. 接下来,在终端更新 Composer

     composer update --dev
    
  3. 此操作完成后,添加服务提供者。打开 app/config/app.php,并在提供者数组中添加新项。

     'PaulVL\MagicModel\MagicModelServiceProvider'
    
  4. 并在同一 app/config/app.php 文件中添加新项到别名数组。

     'MagicModel' => 'PaulVL\MagicModel\MagicModel'
    
  5. 最后,为了正确使用 MagicModel,您必须将您的 "模型"MagicModel 扩展,而不是从 Eloquent 扩展,例如:

    <?php
    . . .
    class User extends MagicModel implements UserInterface, RemindableInterface {
    . . .

##用法

MagicModel 实现了以下方法

用于验证引用

MagicModel 允许您轻松验证记录是否被另一个记录作为 外键 引用。您可以直接从您的 MagicModel 扩展模型使用静态 Model::hasReferences($id) 方法

示例...

<?php
	return dd(Model::hasReferences(1));
	//returns True if primary key "1" is referenced in any table as FK.
	//returns False if primary key "1" is NOT referenced in any table as FK.
?>

或者,您可以使用实例化对象中的 $object->isReferenced() 方法

示例...

<?php
	$object = Model::find(1);
	return dd($object->isReferenced());
	//returns True if the object is referenced in any table as FK.
	//returns False if the object is NOT referenced in any table as FK.
?>