久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

  • <small id='bdGzS'></small><noframes id='bdGzS'>

      • <bdo id='bdGzS'></bdo><ul id='bdGzS'></ul>
    1. <tfoot id='bdGzS'></tfoot>

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

      1. <legend id='bdGzS'><style id='bdGzS'><dir id='bdGzS'><q id='bdGzS'></q></dir></style></legend>

        Laravel - Eloquent - 動態定義的關系

        Laravel - Eloquent - Dynamically defined relationship(Laravel - Eloquent - 動態定義的關系)
          <tbody id='kqAik'></tbody>
        <i id='kqAik'><tr id='kqAik'><dt id='kqAik'><q id='kqAik'><span id='kqAik'><b id='kqAik'><form id='kqAik'><ins id='kqAik'></ins><ul id='kqAik'></ul><sub id='kqAik'></sub></form><legend id='kqAik'></legend><bdo id='kqAik'><pre id='kqAik'><center id='kqAik'></center></pre></bdo></b><th id='kqAik'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='kqAik'><tfoot id='kqAik'></tfoot><dl id='kqAik'><fieldset id='kqAik'></fieldset></dl></div>

          • <bdo id='kqAik'></bdo><ul id='kqAik'></ul>
            <legend id='kqAik'><style id='kqAik'><dir id='kqAik'><q id='kqAik'></q></dir></style></legend>

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

                  <tfoot id='kqAik'></tfoot>
                1. 本文介紹了Laravel - Eloquent - 動態定義的關系的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  是否可以動態設置模型的關系?例如,我有模型 Page,我想在不實際更改其文件的情況下向其添加關系 banners()?那么是否存在這樣的事情:

                  Is it possible to set a model's relationship dynamically? For example, I have model Page, and I want to add relationship banners() to it without actually changing its file? So does something like this exist:

                  Page::createRelationship('banners', function(){
                      $this->hasMany('banners');
                  });
                  

                  或者類似的東西?由于它們無論如何都是使用魔術方法獲取的,也許我可以動態添加關系?

                  Or something similar? As they are fetched using the magic methods anyway, perhaps I can add the relationship dynamically?

                  謝謝!

                  推薦答案

                  我為此添加了一個包i-rocky/eloquent-dynamic-relation

                  如果有人仍在尋找解決方案,這里有一個.如果您認為這是個壞主意,請告訴我.

                  In case anyone still looking for a solution , here is one. If you think it's a bad idea, let me know.

                  trait HasDynamicRelation
                  {
                      /**
                       * Store the relations
                       *
                       * @var array
                       */
                      private static $dynamic_relations = [];
                  
                      /**
                       * Add a new relation
                       *
                       * @param $name
                       * @param $closure
                       */
                      public static function addDynamicRelation($name, $closure)
                      {
                          static::$dynamic_relations[$name] = $closure;
                      }
                  
                      /**
                       * Determine if a relation exists in dynamic relationships list
                       *
                       * @param $name
                       *
                       * @return bool
                       */
                      public static function hasDynamicRelation($name)
                      {
                          return array_key_exists($name, static::$dynamic_relations);
                      }
                  
                      /**
                       * If the key exists in relations then
                       * return call to relation or else
                       * return the call to the parent
                       *
                       * @param $name
                       *
                       * @return mixed
                       */
                      public function __get($name)
                      {
                          if (static::hasDynamicRelation($name)) {
                              // check the cache first
                              if ($this->relationLoaded($name)) {
                                  return $this->relations[$name];
                              }
                  
                              // load the relationship
                              return $this->getRelationshipFromMethod($name);
                          }
                  
                          return parent::__get($name);
                      }
                  
                      /**
                       * If the method exists in relations then
                       * return the relation or else
                       * return the call to the parent
                       *
                       * @param $name
                       * @param $arguments
                       *
                       * @return mixed
                       */
                      public function __call($name, $arguments)
                      {
                          if (static::hasDynamicRelation($name)) {
                              return call_user_func(static::$dynamic_relations[$name], $this);
                          }
                  
                          return parent::__call($name, $arguments);
                      }
                  }
                  

                  在您的模型中添加此特征,如下所示

                  Add this trait in your model as following

                  class MyModel extends Model {
                      use HasDynamicRelation;
                  }
                  

                  現在您可以使用以下方法添加新關系

                  Now you can use the following method to add new relationships

                  MyModel::addDynamicRelation('some_relation', function(MyModel $model) {
                      return $model->hasMany(SomeRelatedModel::class);
                  });
                  

                  這篇關于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 找不到驅動程序)
                      <tbody id='7o8aS'></tbody>

                    1. <legend id='7o8aS'><style id='7o8aS'><dir id='7o8aS'><q id='7o8aS'></q></dir></style></legend>

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

                          <small id='7o8aS'></small><noframes id='7o8aS'>

                            <bdo id='7o8aS'></bdo><ul id='7o8aS'></ul>

                          • 主站蜘蛛池模板: 成人性视频在线播放 | 欧美综合在线观看 | 国产精品久久久99 | 欧美性久久久 | 国产免费色 | 黄色网页在线观看 | 亚洲精品99 | 天天玩天天操天天干 | 亚洲第一天堂 | 亚洲欧美国产视频 | 国产999精品久久久影片官网 | 亚洲精品中文字幕在线 | 国产91综合一区在线观看 | 福利视频亚洲 | 精品久久久久久红码专区 | 91久久久久 | 日本视频免费 | 国产精品永久免费 | 精品99在线 | 国产一区二区三区四区 | 中文字幕一区二区三区在线观看 | 久久久久久亚洲精品 | 中文字幕欧美日韩 | 欧美一区二区三 | 狠狠色综合网站久久久久久久 | 成人亚洲一区 | 久久午夜精品福利一区二区 | 亚洲 日本 欧美 中文幕 | 欧美成人h版在线观看 | 久久婷婷国产 | 一级无毛片| 69堂永久69tangcom | 黄免费观看视频 | 激情五月婷婷 | 91免费电影 | 中文字幕在线网 | 亚洲综合二区 | 国产精品1区2区 | 欧美在线资源 | 九九在线视频 | 日韩成人一区 |