Heim > PHP-Framework > Laravel > Einführung in einige gängige Modelleigenschaften in Laravel

Einführung in einige gängige Modelleigenschaften in Laravel

PHPz
Freigeben: 2020-09-27 10:20:58
nach vorne
4117 Leute haben es durchsucht

Dieser Artikel stellt Ihnen einige häufig verwendete Modellattribute in Laravel vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Einführung in einige gängige Modelleigenschaften in Laravel

$connection

 /**
  * 为模型指定一个连接名称。
  *
  * @var string
  */
 protected $connection = 'connection-name';
Nach dem Login kopieren

$table

/**
 * 为模型指定一个表名。
 *
 * @var string
 */
 protected $table = 'users';
Nach dem Login kopieren

$primaryKey

/**
 * 为模型指定主键。
 *
 * @var string
 */
 protected $primaryKey = 'user_id';
Nach dem Login kopieren

$keyType

 /**
  * 自定义主键类型。
  *
  * @var string
  */
 protected $keyType = 'string';
Nach dem Login kopieren

$inkrementieren

 /**
  * 如果使用的是非递增或者非数字的主键。
  *
  * @var bool
  */
 public $incrementing = false;
Nach dem Login kopieren

$with

class Post extends Model
{
 /**
  * 加载模型关联数据。
  * 
  * @var array
  */
  protected $with = [
      'comments'
  ];
}
Nach dem Login kopieren

$withCount

class Post extends Model
{
 /**
  * 加载模型关联数据数量。
  * 
  * @var array
  */
  protected $withCount = [
      'comments'
  ];
}
Nach dem Login kopieren

$timestamps

 /**
  * 执行模型是否自动维护时间戳.
  *
  * @var bool
  */
 public $timestamps = false;
Nach dem Login kopieren

Hinweis: Im aktuellen Modell kann nur einer von „guarded“ und „fillable“ vorhanden sein.

$fillable

/**
 * 可以被批量赋值的属性。
 *
 * @var array
 */
 protected $fillable = ['name', 'age'];
Nach dem Login kopieren

$guarded

 /**
  * 不可被批量赋值的属性,当 $guarded 为空数组时则所有属性都可以被批量赋值。
  *
  * @var array
  */
 protected $guarded = ['price'];
Nach dem Login kopieren

CREATED_AT

 /**
  * 创建时间戳字段名称。
  *
  * @var string
  */
 const CREATED_AT = 'created_at';
Nach dem Login kopieren

UPDATED_AT

 /**
  * 更新时间戳字段名称。
  *
  * @var string
  */
 const UPDATED_AT = 'updated_at';
Nach dem Login kopieren

$attributes

 const STATUS_CREATED = 'created';

 /**
  * 给定字段默认值。
  *
  * @var array
  */
 protected $attributes = [
     'status' => self::STATUS_CREATED,
 ];
Nach dem Login kopieren

$casts

 /**
  * 字段转换为对应的类型。
  *
  * @var array
  */
 protected $casts = [
    'id' => 'integer',
    'settings' => 'array',
    'is_admin' => 'boolean',
 ];
Nach dem Login kopieren

$dates

 /**
  * 需要转换成日期的属性。
  *
  * @var array
  */
 protected $dates = ['deleted_at'];
Nach dem Login kopieren

$dateFormat

 /**
  * 模型中日期字段的保存格式。
  *
  * @var string
  */
 protected $dateFormat = 'U';
Nach dem Login kopieren

Ich bin mir nicht sicher, was U bedeutet, siehe bitte Datums-/Uhrzeitfunktion.

$appends

 /**
  * 追加到模型数组表单的访问器。
  *
  * @var array
  */
 protected $appends = ['is_admin'];
Nach dem Login kopieren

Im Allgemeinen werden Anhänge in Verbindung mit dem Accessor verwendet.

$hidden

 /**
  * 数组中的属性会被隐藏。
  *
  * @var array
  */
 protected $hidden = ['password'];
Nach dem Login kopieren

$visible

 /**
  * 数组中的属性会被展示。
  *
  * @var array
  */
 protected $visible = ['first_name', 'last_name'];
Nach dem Login kopieren

$dispatchesEvents

 /**
  * 模型的事件映射。
  *
  * @var array
  */
 protected $dispatchesEvents = [
     'saved' => UserSaved::class,
     'deleted' => UserDeleted::class,
 ];
Nach dem Login kopieren

$forceDeleting

 /**
  * 指示模型当前是否强制删除。
  *
  * @var bool
  */
 protected $forceDeleting = false;
Nach dem Login kopieren

$proSeite

 /**
  * 默认分页数量。
  *
  * @var int
  */
 protected $perPage = 50;
Nach dem Login kopieren

$touches

/**
  * 更新添加的关联模型的 updated_at 字段。
  *
  * @var array
  */
 protected $touches = ['post'];
Nach dem Login kopieren

Mehr Programmierung für Weitere Informationen zu diesem Thema finden Sie unter: Einführung in die Programmierung! !

Das obige ist der detaillierte Inhalt vonEinführung in einige gängige Modelleigenschaften in Laravel. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage