2011-07-03 10 views
5

先週、私はCIウェブアプリケーションの開発を開始しました。それ以来、データベースの行の追加、削除、更新処理(例えば、delete_invoice、delete_user、delete_jobなどのモデル関数など)に関して、コードをかなり繰り返していることに気付きました。それらはすべて基本的に同じことをする - データベースの行を削除する。codeigniterのCRUDプラグイン/ライブラリ(アイデア?)を探しています

だから誰でも知っていますか: a)私のためにそのようなものを行うための一般的な方法を使用するのは良い考えですか? b)優れたライブラリ/ヘルパーなどがCIにあるかどうか。私はむしろ、奇妙な機能でいっぱいのものの上に、より標準的な/安定したライブラリのために行くだろう。

ありがとうございます!ジョン。 。

答えて

0

ジョン、私は、一つの方法でBaseModelクラスを使用し、保存し、すべての私のクラスは、例えば、そのオブジェクトとそのデータベースを格納するために別の1で起こるために何が起こっているか格納する属性を持っているし、ステータス:

ユーザーは、ステータスが「削除」され、削除されようとしていると私はBaseModelにユーザーオブジェクトが状態をチェックする機能を保存することを送信:私のプロジェクトのために正常に動作します

switch($obj->status){ 
    case "delete": 
     //delete call 
    case "update": 
     ... 

=)

希望をそれは助ける

+0

どちらも良い答えを、私は、私はちょうど再使用は、他の何だろうと思って怠けていますリンク先の男。これは本当にたくさんのことを意味しています。私はこのようなやり方をもう少ししなければなりません。 –

0

これは「狂気の機能の完全な何か」カテゴリに分類されるかもしれませんが、CodeIgniterのためのDataMapperのORMライブラリは一見の価値があります。 Jamie RumbelowのベースモデルとORMの良さを加えたものと同じです。個人的に

http://datamapper.wanwizard.eu/

私はプロジェクトのニーズに応じて、1つまたは他の方法を使用する傾向があります。

4

grocery crudを使うことができます。シンプルで安定していて、リレーション1-nやn-nリレーション、ファイルのアップロード、自動フィールド、コールバック関数など、多くの機能があります。あなたはユーザーガイドを表示し、それは、このライブラリに書き込むことはとても簡単です、それは、何度も何度も同様のコードをコピーする必要はありません、同様のモデル、同様の見解、同様のJavaScriptの

http://www.grocerycrud.com

でそれをダウンロードすることができます、CSSなど。コードの行数を少なくして簡単にプログラムすることができます。例えば、

$this->grocery_crud->set_table('customers'); 
$this->grocery_crud->columns('customerName','phone','addressLine1','creditLimit'); 

$this->grocery_crud->render(); 

それだけです!

関連する問題