解决TP5取不到Model的自定义字段问题

发布时间 - 2021-09-11 00:00:00    点击率:

thinkphp框架教程栏目将给大家介绍关于TP5取不到Model实例的自定义字段 type的问题,希望对需要的朋友有所帮助!

thinkphp5 取不到Model实例的 自定义字段 type?

$proxy->type 得到的结果是 []

空数组

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'];
    }
 // ...
}

查看父类 \think\Model 

thinkphp/library/think/Model.php

\think\Model 定义了type字段 就不会走到 __get魔术方法

假设走到__get方法

接下来到getAttr方法

然后是getData方法

所以我在自定义的Model中添加方法取得type字段的值

    public function getType() {
         return $this->data['type'];
     }对于一些常见词用来命名需要注意 比如 type, name, class...

可以改名typeName, clazz


# php  # thinkphp  # 父类  # 自定义  # 走到  # 我在  # 更新时间  # 设置为  # 需要注意  # 将给  # 结果是  # Common  # admin 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在香港服务器上快速搭建免备案网站?  七夕网站制作视频,七夕大促活动怎么报名?  Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】  如何快速生成ASP一键建站模板并优化安全性?  如何快速搭建高效服务器建站系统?  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  Python图片处理进阶教程_Pillow滤镜与图像增强  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  如何在阿里云通过域名搭建网站?  Laravel如何实现API速率限制?(Rate Limiting教程)  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  如何在阿里云香港服务器快速搭建网站?  Android利用动画实现背景逐渐变暗  Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  Laravel如何实现一对一模型关联?(Eloquent示例)  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  微信推文制作网站有哪些,怎么做微信推文,急?  详解阿里云nginx服务器多站点的配置  Laravel如何使用withoutEvents方法临时禁用模型事件  文字头像制作网站推荐软件,醒图能自动配文字吗?  5种Android数据存储方式汇总  Swift中switch语句区间和元组模式匹配  深圳网站制作培训,深圳哪些招聘网站比较好?  Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件  Laravel Fortify是什么,和Jetstream有什么关系  HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  EditPlus中的正则表达式 实战(2)  ,在苏州找工作,上哪个网站比较好?  iOS中将个别页面强制横屏其他页面竖屏  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  如何确认建站备案号应放置的具体位置?  高防服务器租用指南:配置选择与快速部署攻略  公司门户网站制作流程,华为官网怎么做?  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  长沙企业网站制作哪家好,长沙水业集团官方网站?  Laravel如何创建自定义Facades?(详细步骤)  如何用VPS主机快速搭建个人网站?  Android使用GridView实现日历的简单功能  如何在云主机上快速搭建网站?  如何解决hover在ie6中的兼容性问题  DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  iOS发送验证码倒计时应用