2010-12-06 14 views
0

私のモデルの方法は、FROM句のように見えるデータベースを複数回照会した場合、私は、しかし、次のCodeIgniterのモデルでテーブル名を永続化

function Areas() 
{ 
    parent::Model(); 
    $this->db->from("areas"); 
} 

のようなコンストラクタを使用してそれらを設定してい最初のクエリにのみ含まれています。モデル内で実行されるすべてのクエリに対してFROMを永続化する簡単な方法はありますか(手動で上書きしない限り)

答えて

2

私はこれに反対します。それは後で、ラインの下でバグを洗うことを本当に難しくします。問題は、私が推測しているように、テーブルの名前が変わることと関係がありますか?この場合、各テーブルに対して定数を使用し、config内の名前を変更することができます。

コード行を保存したかったら、もっと多くの行が良いでしょう。これはここに当てはまります。

+0

どのような種類のバグが発生しますか? – wheresrhys

+1

例:4つのクエリを連続して作成し、中間に1つを追加して別のテーブルに接続しますが、これを忘れてしまいます。またはfromを覚えておいて、fromをもう一方のテーブルに追加してから、もう一方のテーブルに再び接続することを忘れないでください。どちらのバグでも追跡が難しいかもしれません。特に、それらの呼び出しがそれらの間に多数のコード行を持つ場合。 - それらの間に多くの行がある場合は、現在ロックされているテーブルを覚えておく必要があります。 – DampeS8N

+0

しかし、これは逆もできません:FROMがすべてのクエリに対してあらかじめ設定されていない場合は、行 - > from( "table_name")を追加するのを忘れるたびに同等のバグがあります。 "table_name"のタイプミス。 – wheresrhys

関連する問題