rangka kerja thinkphp Lajur tutorial akan memperkenalkan kepada anda masalah bahawa TP5 tidak boleh mendapatkan jenis medan tersuai bagi contoh Model memerlukan!
thinkphp5 tidak boleh mendapatkan jenis medan tersuai bagi contoh Model?
$proxy->type
Hasilnya ialah []
tatasusunan kosong
JdProxy.php
namespace app\crm\model; use think\Model; // use app\admin\model\Common as BaseModel; class JdProxy extends Model { protected $table = '5kcrm_crm_district'; protected $pk = 'id'; protected $field = ['id', 'type', 'arm_acid', 'province','city','district', 'proxyname','manager','gradetype', 'has_updated']; protected function initialize() { parent::initialize(); } // 创建时间字段 protected $createTime = 'created_at'; // 更新时间字段 protected $updateTime = 'updated_at'; // 是否需要自动写入时间戳 如果设置为字符串 则表示时间字段的类型 protected $autoWriteTimestamp = 'datetime'; public function getTable($name = '') { return parent::getTable($name); // TODO: Change the autogenerated stub } /** * type是父级\think\Model的属性 * 不能直接$this->type */ public function getType() { return $this->data['type']; } // ... }
Lihat kelas induk thinkModel
thinkphp/library/think/Model.php
thinkModel mentakrifkan medan jenis dan tidak akan pergi ke kaedah __get magic
Andaikan ia pergi ke _ Kaedah _get
Seterusnya kaedah getAttr
dan kemudian kaedah getData
Jadi saya menambah kaedah dalam Model tersuai untuk mendapatkan nilai medan jenis
public function getType() { return $this->data['type']; }对于一些常见词用来命名需要注意 比如 type, name, class...
Anda boleh menukar nama kepada typeName, clazz
Atas ialah kandungan terperinci Selesaikan masalah bahawa TP5 tidak boleh mendapatkan medan tersuai Model. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!