私はIdiormでParisを使用していますが、ドキュメントでテーブルを見つけて更新する方法についての明確な指示を見つけるのに問題があります。
スクリプトにSQLクエリを挿入したくありません。他に方法はありますか?
Parisは、Idiormに基づくActiveRecordの実装です。Idiormは、オブジェクトリレーショナルマッパーであり、流暢なクエリビルダーです。
count = count+1を一度に実行することに興味があります
私は彼らのgithubサイトでこれを見つけました:
レコードの更新 データベースを更新するには、オブジェクトの 1 つ以上のプロパティを変更してから、save メソッドを呼び出して変更をデータベースにコミットします。繰り返しますが、set メソッドを使用するか、プロパティの値を直接設定することで、オブジェクトのプロパティの値を変更できます。
$person = ORM::for_table('person')->find_one(5);
// The following two forms are equivalent
$person->set('name', 'Bob Smith');
$person->age = 20;
// Syncronise the object with the database
$person->save();
Creating new records
新しいレコードを追加するには、最初に「空の」オブジェクト インスタンスを作成する必要があります。次に、通常どおりオブジェクトに値を設定し、保存します。
$person = ORM::for_table('person')->create();
$person->name = 'Joe Bloggs';
$person->age = 40;
$person->save();
オブジェクトが保存された後、その id() メソッドを呼び出して、データベースが割り当てた自動生成された主キー値を見つけることができます。
プロパティが変更されたかどうかの確認 オブジェクトが作成された (または最後に保存された) 以降にプロパティが変更されたかどうかを確認するには、is_dirty メソッドを呼び出します。
$name_has_changed = $person->is_dirty('name'); // Returns true or false
github ページのドキュメントによると、イディオムでは次のようにしてレコードを更新できます。
$person = ORM::for_table('person')->find_one(5);
// The following two forms are equivalent
$person->set('name', 'Bob Smith');
$person->age = 20;
// Syncronise the object with the database
$person->save();
または「パリ」でそれを行うには、次のようにします。
$user = Model::factory('User')->find_one($id);
$user->name = 'Paris';
$user->save();