pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <legend id='QMabT'><style id='QMabT'><dir id='QMabT'><q id='QMabT'></q></dir></style></legend>

    • <bdo id='QMabT'></bdo><ul id='QMabT'></ul>

  1. <tfoot id='QMabT'></tfoot>
    <i id='QMabT'><tr id='QMabT'><dt id='QMabT'><q id='QMabT'><span id='QMabT'><b id='QMabT'><form id='QMabT'><ins id='QMabT'></ins><ul id='QMabT'></ul><sub id='QMabT'></sub></form><legend id='QMabT'></legend><bdo id='QMabT'><pre id='QMabT'><center id='QMabT'></center></pre></bdo></b><th id='QMabT'></th></span></q></dt></tr></i><div class="qio222y" id='QMabT'><tfoot id='QMabT'></tfoot><dl id='QMabT'><fieldset id='QMabT'></fieldset></dl></div>

    <small id='QMabT'></small><noframes id='QMabT'>

      Eloquent Laravel 模型上的 __construct

      A __construct on an Eloquent Laravel Model(Eloquent Laravel 模型上的 __construct)

    1. <i id='tobEH'><tr id='tobEH'><dt id='tobEH'><q id='tobEH'><span id='tobEH'><b id='tobEH'><form id='tobEH'><ins id='tobEH'></ins><ul id='tobEH'></ul><sub id='tobEH'></sub></form><legend id='tobEH'></legend><bdo id='tobEH'><pre id='tobEH'><center id='tobEH'></center></pre></bdo></b><th id='tobEH'></th></span></q></dt></tr></i><div class="ow02aa2" id='tobEH'><tfoot id='tobEH'></tfoot><dl id='tobEH'><fieldset id='tobEH'></fieldset></dl></div>

          • <bdo id='tobEH'></bdo><ul id='tobEH'></ul>
          • <tfoot id='tobEH'></tfoot>

                <small id='tobEH'></small><noframes id='tobEH'>

                  <tbody id='tobEH'></tbody>

                <legend id='tobEH'><style id='tobEH'><dir id='tobEH'><q id='tobEH'></q></dir></style></legend>
              • 本文介紹了Eloquent Laravel 模型上的 __construct的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                我有一個自定義的 setter,我在我的模型的 __construct 方法中運行它.

                I have a custom setter that I'm running in a __construct method on my model.

                這是我要設置的屬性.

                    protected $directory;
                

                我的構造函數

                    public function __construct()
                    {
                        $this->directory = $this->setDirectory();
                    }
                

                二傳手:

                    public function setDirectory()
                    {
                        if(!is_null($this->student_id)){
                            return $this->student_id;
                        }else{
                            return 'applicant_' . $this->applicant_id;
                        }
                    }
                

                我的問題是在我的 setter 中,$this->student_id(這是從數據庫中提取的模型的一個屬性)返回 null.當我在我的 setter 中 dd($this) 時,我注意到我的 #attributes:[] 是一個空數組.
                所以,直到 __construct() 被觸發后,模型的屬性才會被設置.如何在構造方法中設置 $directory 屬性?

                My problem is that inside my setter the, $this->student_id (which is an attribute of the model being pulled from the database) is returning null. When I dd($this) from inside my setter, I notice that my #attributes:[] is an empty array.
                So, a model's attributes aren't set until after __construct() is fired. How can I set my $directory attribute in my construct method?

                推薦答案

                您需要將構造函數更改為:

                You need to change your constructor to:

                public function __construct(array $attributes = array())
                {
                    parent::__construct($attributes);
                
                    $this->directory = $this->setDirectory();
                }
                

                第一行 (parent::__construct()) 會在你的代碼運行之前運行 Eloquent Model 自己的構造方法,這將設置所有的屬性為你.此外,對構造函數方法簽名的更改是繼續支持 Laravel 期望的用法: $model = new Post(['id' => 5, 'title' => 'My Post']);

                The first line (parent::__construct()) will run the Eloquent Model's own construct method before your code runs, which will set up all the attributes for you. Also the change to the constructor's method signature is to continue supporting the usage that Laravel expects: $model = new Post(['id' => 5, 'title' => 'My Post']);

                經驗法則實際上是始終記住,在擴展類時,要檢查您沒有覆蓋現有方法以使其不再運行(這對于神奇的 __construct__get 等方法).您可以檢查原始文件的來源,看看它是否包含您正在定義的方法.

                The rule of thumb really is to always remember, when extending a class, to check that you're not overriding an existing method so that it no longer runs (this is especially important with the magic __construct, __get, etc. methods). You can check the source of the original file to see if it includes the method you're defining.

                這篇關于Eloquent Laravel 模型上的 __construct的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                Deadlock exception code for PHP, MySQL PDOException?(PHP、MySQL PDOException 的死鎖異常代碼?)
                PHP PDO MySQL scrollable cursor doesn#39;t work(PHP PDO MySQL 可滾動游標不起作用)
                PHP PDO ODBC connection(PHP PDO ODBC 連接)
                Using PDO::FETCH_CLASS with Magic Methods(使用 PDO::FETCH_CLASS 和魔術方法)
                php pdo get only one value from mysql; value that equals to variable(php pdo 只從 mysql 獲取一個值;等于變量的值)
                MSSQL PDO could not find driver(MSSQL PDO 找不到驅動程序)
                <tfoot id='n9f5q'></tfoot>
              • <i id='n9f5q'><tr id='n9f5q'><dt id='n9f5q'><q id='n9f5q'><span id='n9f5q'><b id='n9f5q'><form id='n9f5q'><ins id='n9f5q'></ins><ul id='n9f5q'></ul><sub id='n9f5q'></sub></form><legend id='n9f5q'></legend><bdo id='n9f5q'><pre id='n9f5q'><center id='n9f5q'></center></pre></bdo></b><th id='n9f5q'></th></span></q></dt></tr></i><div class="iokcoac" id='n9f5q'><tfoot id='n9f5q'></tfoot><dl id='n9f5q'><fieldset id='n9f5q'></fieldset></dl></div>

                <small id='n9f5q'></small><noframes id='n9f5q'>

                  <bdo id='n9f5q'></bdo><ul id='n9f5q'></ul>
                      <tbody id='n9f5q'></tbody>
                    <legend id='n9f5q'><style id='n9f5q'><dir id='n9f5q'><q id='n9f5q'></q></dir></style></legend>

                          主站蜘蛛池模板: 河南不锈钢水箱_地埋水箱_镀锌板水箱_消防水箱厂家-河南联固供水设备有限公司 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂_帽子厂_浙江高普制帽厂 | 重庆私家花园设计-别墅花园-庭院-景观设计-重庆彩木园林建设有限公司 | 威海防火彩钢板,威海岩棉复合板,威海彩钢瓦-文登区九龙岩棉复合板厂 | 刚性-柔性防水套管-橡胶伸缩接头-波纹管补偿器-启腾供水材料有限公司 | 私人别墅家庭影院系统_家庭影院音响_家庭影院装修设计公司-邦牛影音 | 生物颗粒燃烧机-生物质燃烧机-热风炉-生物颗粒蒸汽发生器-丽水市久凯能源设备有限公司 | 船用锚链|专业锚链生产厂家|安徽亚太锚链制造有限公司 | 齿式联轴器-弹性联轴器-联轴器厂家-江苏诺兴传动联轴器制造有限公司 | 高铝砖-高铝耐火球-高铝耐火砖生产厂家-价格【荣盛耐材】 | 酒精检测棒,数显温湿度计,酒安酒精测试仪,酒精检测仪,呼气式酒精检测仪-郑州欧诺仪器有限公司 | 众能联合-提供高空车_升降机_吊车_挖机等一站工程设备租赁 | 青岛成人高考_山东成考报名网| LHH药品稳定性试验箱-BPS系列恒温恒湿箱-意大利超低温冰箱-上海一恒科学仪器有限公司 | 双菱电缆-广州电缆厂_广州电缆厂有限公司| 安徽免检低氮锅炉_合肥燃油锅炉_安徽蒸汽发生器_合肥燃气锅炉-合肥扬诺锅炉有限公司 | 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 北京包装设计_标志设计公司_包装设计公司-北京思逸品牌设计 | 瓶盖扭矩仪(扭力值检测)-百科 | 猎头招聘_深圳猎头公司_知名猎头公司 | 臻知网大型互动问答社区-你的问题将在这里得到解答!-无锡据风网络科技有限公司 | 精密交叉滚子轴承厂家,转盘轴承,YRT转台轴承-洛阳千协轴承 | 石磨面粉机|石磨面粉机械|石磨面粉机组|石磨面粉成套设备-河南成立粮油机械有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 炭黑吸油计_测试仪,单颗粒子硬度仪_ASTM标准炭黑自销-上海贺纳斯仪器仪表有限公司(HITEC中国办事处) | 天津中都白癜风医院_天津白癜风医院_天津治疗白癜风 | 沈阳缠绕包装机厂家直销-沈阳海鹞托盘缠绕包装机价格 | 东莞压铸厂_精密压铸_锌合金压铸_铝合金压铸_压铸件加工_东莞祥宇金属制品 | 富森高压水枪-柴油驱动-养殖场高压清洗机-山东龙腾环保科技有限公司 | 超声骨密度仪,双能X射线骨密度仪【起草单位】,骨密度检测仪厂家 - 品源医疗(江苏)有限公司 | 武汉高温老化房,恒温恒湿试验箱,冷热冲击试验箱-武汉安德信检测设备有限公司 | 旋振筛|圆形摇摆筛|直线振动筛|滚筒筛|压榨机|河南天众机械设备有限公司 | 测试治具|过炉治具|过锡炉治具|工装夹具|测试夹具|允睿自动化设备 | 油液红外光谱仪-油液监测系统-燃油嗅探仪-上海冉超光电科技有限公司 | 油液红外光谱仪-油液监测系统-燃油嗅探仪-上海冉超光电科技有限公司 | 网站建设-高端品牌网站设计制作一站式定制_杭州APP/微信小程序开发运营-鼎易科技 | 优宝-汽车润滑脂-轴承润滑脂-高温齿轮润滑油脂厂家 | 涡街流量计_LUGB智能管道式高温防爆蒸汽温压补偿计量表-江苏凯铭仪表有限公司 | 红酒招商加盟-葡萄酒加盟-进口红酒代理-青岛枞木酒业有限公司 | 医学动画公司-制作3d医学动画视频-医疗医学演示动画制作-医学三维动画制作公司 | 聚天冬氨酸,亚氨基二琥珀酸四钠,PASP,IDS - 远联化工 |