php:fuelphp:oil_generate_model

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
php:fuelphp:oil_generate_model [2012/11/27 01:26] – [テーブル名に'_'(アンダースコア) を多用しなければならない場合] ともやんphp:fuelphp:oil_generate_model [2024/03/27 10:51] (現在) – [create_at、update_at を timestamp 型にする方法] ともやん
行 30: 行 30:
 \\ \\
 fuelapp/fuel/app/classes/model/tablename.php fuelapp/fuel/app/classes/model/tablename.php
-<sxh php collapse:true>+<code php collapse:true>
 <?php <?php
  
行 56: 行 56:
     );     );
 } }
-</sxh>+</code>
 fuelapp/fuel/app/migrations/001_create_tablenames.php fuelapp/fuel/app/migrations/001_create_tablenames.php
-<sxh php collapse:true>+<code php collapse:true>
 <?php <?php
  
行 84: 行 84:
     }     }
 } }
-</sxh>+</code>
  
 ===== スキーマの生成 ===== ===== スキーマの生成 =====
行 97: 行 97:
 処理済みの migration は以下のように記録される。\\ 処理済みの migration は以下のように記録される。\\
 fuelapp/fuel/app/config/development/migrations.php fuelapp/fuel/app/config/development/migrations.php
-<sxh php collapse:true>+<code php collapse:true>
 <?php <?php
 return array( return array(
行 119: 行 119:
  'table' => 'migration',  'table' => 'migration',
 ); );
-</sxh>+</code>
 mysql の migration テーブルにも記録される。<code> mysql の migration テーブルにも記録される。<code>
 mysql> use fuel_db; mysql> use fuel_db;
行 138: 行 138:
 </code> </code>
 fuelapp/fuel/app/classes/model/tablename.php fuelapp/fuel/app/classes/model/tablename.php
-<sxh php collapse:true>+<code php collapse:true>
 <?php <?php
  
行 164: 行 164:
     );     );
 } }
-</sxh>+</code>
 fuelapp/fuel/app/migrations/001_create_tablenames.php fuelapp/fuel/app/migrations/001_create_tablenames.php
-<sxh php collapse:true>+<code php collapse:true>
 <?php <?php
  
行 191: 行 191:
         \DBUtil::drop_table('tablenames');         \DBUtil::drop_table('tablenames');
     }     }
-}</sxh>+}</code>
  
 ===== 生成済みテーブルを強制上書きする方法 ===== ===== 生成済みテーブルを強制上書きする方法 =====
行 210: 行 210:
 001_create_tablenames.php -> 001_create_tablename.php 001_create_tablenames.php -> 001_create_tablename.php
 </code> </code>
-  - マイグレーションクラス、物理テーブル名を修正する。\\ fuelapp/fuel/app/migrations/001_create_tablename.php\\ <sxh php collapse:true highlight:[5,9]>+  - マイグレーションクラス、物理テーブル名を修正する。\\ fuelapp/fuel/app/migrations/001_create_tablename.php\\ <code php collapse:true highlight:[5,9]>
 <?php <?php
  
行 236: 行 236:
     }     }
 } }
-</sxh+</code
-  - モデルクラスに以下を記述する。\\ fuelapp/fuel/app/classes/model/tablename.php\\ <sxh php collapse:true highlight:[5]>+  - モデルクラスに以下を記述する。\\ fuelapp/fuel/app/classes/model/tablename.php\\ <code php collapse:true highlight:[5]>
 <?php <?php
  
行 265: 行 265:
     );     );
 } }
-</sxh>+</code>
 ※Fuel は Inflector::pluralize()、Inflector::singularize() で単数/複数形の単語を生成している。 ※Fuel は Inflector::pluralize()、Inflector::singularize() で単数/複数形の単語を生成している。
  
行 289: 行 289:
 オートロードできるようにするには、以下のファイルを記述する。\\ オートロードできるようにするには、以下のファイルを記述する。\\
 fuelapp/app/bootstrap.php fuelapp/app/bootstrap.php
-<sxh php collapse:true highlight:[14]>+<code php collapse:true highlight:[14]>
 <?php <?php
  
行 321: 行 321:
 // Initialize the framework with the config file. // Initialize the framework with the config file.
 Fuel::init('config.php'); Fuel::init('config.php');
-</sxh>+</code> 
 + 
 +===== Observer を無効化したい場合 ===== 
 +$_observers をクリアする関数を定義してそれを呼び出す。 
 +<code php collapse:true highlight:[26,27,28,29]> 
 +<?php 
 + 
 +class Model_Tablename extends \Orm\Model 
 +
 +    protected static $_properties = array( 
 +        'id', 
 +        'column1', 
 +        'column2', 
 +        'column3', 
 +        'column4', 
 +        'created_at', 
 +        'updated_at' 
 +    ); 
 + 
 +    protected static $_observers = array( 
 +        'Orm\Observer_CreatedAt' => array( 
 +            'events' => array('before_insert'), 
 +            'mysql_timestamp' => true, 
 +        ), 
 +        'Orm\Observer_UpdatedAt' => array( 
 +            'events' => array('before_save'), 
 +            'mysql_timestamp' => true, 
 +        ), 
 +    ); 
 + 
 +    public static function clear_observers() 
 +    { 
 +        static::$_observers = array(); 
 +    } 
 +
 +</code> 
  • php/fuelphp/oil_generate_model.1353947184.txt.gz
  • 最終更新: 2019/05/18 02:23
  • (外部編集)