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

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

  • <tfoot id='YYwGN'></tfoot>

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

        <bdo id='YYwGN'></bdo><ul id='YYwGN'></ul>
      1. <legend id='YYwGN'><style id='YYwGN'><dir id='YYwGN'><q id='YYwGN'></q></dir></style></legend>

      2. Laravel Eloquent 更新僅在進行更改時

        Laravel Eloquent update just if changes have been made(Laravel Eloquent 更新僅在進行更改時)

          <tbody id='WrBjc'></tbody>
            • <bdo id='WrBjc'></bdo><ul id='WrBjc'></ul>
            • <i id='WrBjc'><tr id='WrBjc'><dt id='WrBjc'><q id='WrBjc'><span id='WrBjc'><b id='WrBjc'><form id='WrBjc'><ins id='WrBjc'></ins><ul id='WrBjc'></ul><sub id='WrBjc'></sub></form><legend id='WrBjc'></legend><bdo id='WrBjc'><pre id='WrBjc'><center id='WrBjc'></center></pre></bdo></b><th id='WrBjc'></th></span></q></dt></tr></i><div class="00e2ea2" id='WrBjc'><tfoot id='WrBjc'></tfoot><dl id='WrBjc'><fieldset id='WrBjc'></fieldset></dl></div>
              <tfoot id='WrBjc'></tfoot>
            • <small id='WrBjc'></small><noframes id='WrBjc'>

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

                  本文介紹了Laravel Eloquent 更新僅在進行更改時的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  如果對記錄進行了更改,有沒有辦法使用 eloquent 模型更新 Laravel 中的記錄?我不希望任何用戶無緣無故地一遍又一遍地請求數據庫,只需點擊按鈕即可保存更改.我有一個 javascript 功能,可以根據頁面中的某些內容是否已更改啟用和禁用保存按鈕,但我想知道是否可以確保在服務器上執行此類功能邊也.我知道我可以自己完成它(意思是:不訴諸框架的內部功能)只是通過檢查記錄是否有變化,但在這樣做之前,我想知道 Laravel eloquent 模型是否已經處理好了這樣,我就不需要重新發明輪子了.

                  Is there any way to update a record in Laravel using eloquent models just if a change has been made to that record? I don't want any user requesting the database for no good reason over and over, just hitting the button to save changes. I have a javascript function that enables and disables the save button according with whether something has changed in the page, but I would like to know if it's possible to make sure to do this kind of feature on the server side too. I know I can accomplish it by myself (meaning: without appealing to an internal functionality of the framework) just by checking if the record has change, but before doing it that way, I would like to know if Laravel eloquent model already takes care of that, so I don't need to re-invent the wheel.

                  這是我用來更新記錄的方式:

                  This is the way I use to update a record:

                  $product = Product::find($data["id"]);
                  $product->title = $data["title"];
                  $product->description = $data["description"];
                  $product->price = $data["price"];
                  //etc (string values were previously sanitized for xss attacks)
                  $product->save();
                  

                  推薦答案

                  你已經做到了!

                  save() 將檢查模型中的某些內容是否已更改.如果沒有,它將不會運行數據庫查詢.

                  save() will check if something in the model has changed. If it hasn't it won't run a db query.

                  下面是IlluminateDatabaseEloquentModel@performUpdate中相關部分的代碼:

                  Here's the relevant part of code in IlluminateDatabaseEloquentModel@performUpdate:

                  protected function performUpdate(Builder $query, array $options = [])
                  {
                      $dirty = $this->getDirty();
                  
                      if (count($dirty) > 0)
                      {
                          // runs update query
                      }
                  
                      return true;
                  }
                  

                  <小時>

                  getDirty() 方法只是將當前屬性與創建模型時保存在 original 中的副本進行比較.這是在 syncOriginal() 方法中完成的:


                  The getDirty() method simply compares the current attributes with a copy saved in original when the model is created. This is done in the syncOriginal() method:

                  public function __construct(array $attributes = array())
                  {
                      $this->bootIfNotBooted();
                  
                      $this->syncOriginal();
                  
                      $this->fill($attributes);
                  }
                  
                  public function syncOriginal()
                  {
                      $this->original = $this->attributes;
                  
                      return $this;
                  }
                  

                  <小時>

                  如果你想檢查模型是否臟,只需調用 isDirty():

                  if($product->isDirty()){
                      // changes have been made
                  }
                  

                  或者如果你想檢查某個屬性:

                  Or if you want to check a certain attribute:

                  if($product->isDirty('price')){
                      // price has changed
                  }
                  

                  這篇關于Laravel Eloquent 更新僅在進行更改時的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持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='RtKUQ'></tfoot>

                    • <i id='RtKUQ'><tr id='RtKUQ'><dt id='RtKUQ'><q id='RtKUQ'><span id='RtKUQ'><b id='RtKUQ'><form id='RtKUQ'><ins id='RtKUQ'></ins><ul id='RtKUQ'></ul><sub id='RtKUQ'></sub></form><legend id='RtKUQ'></legend><bdo id='RtKUQ'><pre id='RtKUQ'><center id='RtKUQ'></center></pre></bdo></b><th id='RtKUQ'></th></span></q></dt></tr></i><div class="u2mooi2" id='RtKUQ'><tfoot id='RtKUQ'></tfoot><dl id='RtKUQ'><fieldset id='RtKUQ'></fieldset></dl></div>

                          <bdo id='RtKUQ'></bdo><ul id='RtKUQ'></ul>
                            <tbody id='RtKUQ'></tbody>
                          • <small id='RtKUQ'></small><noframes id='RtKUQ'>

                          • <legend id='RtKUQ'><style id='RtKUQ'><dir id='RtKUQ'><q id='RtKUQ'></q></dir></style></legend>
                            主站蜘蛛池模板: 展厅设计-展馆设计-专业企业展厅展馆设计公司-昆明华文创意 | ◆大型吹塑加工|吹塑加工|吹塑代加工|吹塑加工厂|吹塑设备|滚塑加工|滚塑代加工-莱力奇塑业有限公司 | 分光色差仪,测色仪,反透射灯箱,爱色丽分光光度仪,美能达色差仪维修_苏州欣美和仪器有限公司 | SRRC认证_电磁兼容_EMC测试整改_FCC认证_SDOC认证-深圳市环测威检测技术有限公司 | 冷镦机-多工位冷镦机-高速冷镦机厂家-温州金诺机械设备制造有限公司 | 工业废水处理|污水处理厂|废水治理设备工程技术公司-苏州瑞美迪 今日娱乐圈——影视剧集_八卦娱乐_明星八卦_最新娱乐八卦新闻 | 金联宇电缆总代理-金联宇集团-广东金联宇电缆实业有限公司 | 煤机配件厂家_刮板机配件_链轮轴组_河南双志机械设备有限公司 | 杭州实验室尾气处理_实验台_实验室家具_杭州秋叶实验设备有限公司 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 - 杭州标识标牌|文化墙|展厅|导视|户内外广告|发光字|灯箱|铭阳制作公司 | 鑫铭东办公家具一站式定制采购-深圳办公家具厂家直销 | 宜兴市恺瑞德环保科技有限公司| 玻璃瓶厂家_酱菜瓶厂家_饮料瓶厂家_酒瓶厂家_玻璃杯厂家_徐州东明玻璃制品有限公司 | 无硅导热垫片-碳纤维导热垫片-导热相变材料厂家-东莞市盛元新材料科技有限公司 | 冷却塔风机厂家_静音冷却塔风机_冷却塔电机维修更换维修-广东特菱节能空调设备有限公司 | 加盟店-品牌招商加盟-创业项目商机平台 | 全国国际学校排名_国际学校招生入学及学费-学校大全网 | 网站优化公司_SEO优化_北京关键词百度快速排名-智恒博网络 | 蜘蛛车-高空作业平台-升降机-高空作业车租赁-臂式伸缩臂叉装车-登高车出租厂家 - 普雷斯特机械设备(北京)有限公司 | 专业生产动态配料系统_饲料配料系统_化肥配料系统等配料系统-郑州鑫晟重工机械有限公司 | 西点培训学校_法式西点培训班_西点师培训_西点蛋糕培训-广州烘趣西点烘焙培训学院 | 定量包装秤,吨袋包装称,伸缩溜管,全自动包装秤,码垛机器人,无锡市邦尧机械工程有限公司 | 化工ERP软件_化工新材料ERP系统_化工新材料MES软件_MES系统-广东顺景软件科技有限公司 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 | 半自动预灌装机,卡式瓶灌装机,注射器灌装机,给药器灌装机,大输液灌装机,西林瓶灌装机-长沙一星制药机械有限公司 | 氧化锆纤维_1800度高温退火炉_1800度高温烧结炉-南京理工宇龙新材料股份有限公司 | 杭州顺源过滤机械有限公司官网-压滤机_板框压滤机_厢式隔膜压滤机厂家 | 数控车床-立式加工中心-多功能机床-小型车床-山东临沂金星机床有限公司 | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 南京种植牙医院【官方挂号】_南京治疗种植牙医院那个好_南京看种植牙哪里好_南京茀莱堡口腔医院 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 激光内雕_led玻璃_发光玻璃_内雕玻璃_导光玻璃-石家庄明晨三维科技有限公司 激光内雕-内雕玻璃-发光玻璃 | 航空连接器,航空插头,航空插座,航空接插件,航插_深圳鸿万科 | 哈尔滨治「失眠/抑郁/焦虑症/精神心理」专科医院排行榜-京科脑康免费咨询 一对一诊疗 | 垃圾清运公司_环卫保洁公司_市政道路保洁公司-华富环境 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 【德信自动化】点胶机_全自动点胶机_自动点胶机厂家_塑料热压机_自动螺丝机-深圳市德信自动化设备有限公司 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 【北京写字楼出租_写字楼租赁_办公室出租网/出售】-远行地产官网 | 板式换网器_柱式换网器_自动换网器-郑州海科熔体泵有限公司 | 丹佛斯变频器-Danfoss战略代理经销商-上海津信变频器有限公司 |