2012-02-29 8 views
2

私はプロジェクトにphpactiverecordを使用しようとしていましたが、実際の更新メソッドを使ってmysql関数を実際に渡すことができるかどうかは分かりません。私はちょっと驚きましたが、私はどこでもこの質問に対する答えを見つけることができませんでした。私はベースオフ可能性がありますが $object->date = 'now'オブジェクトのNOW()を更新するPhpactiverecord

+0

をPHPの関数を使用して、それを更新? – dnagirl

+0

@dnagirl言うべき明白なインターフェースがないことは確かです。$ object-> last_edited = 'NOW()'、$ object-> save(); ..その場合、それは準備された声明に入れられるでしょうから。私は別のクエリを作成するか、データベース内のフィールドをタイムスタンプに変更する必要があると推測しています... – Anther

答えて

1

私が正しく理解している場合は、NOW()に電話してタイムスタンプフィールドを更新します。いくつかのオプションがあります。

+0

phpactiverecordはphpのdate()関数を使用して日付、私はその関数に値を設定しました。それは、phpとmysqlが常に同じタイムサーバーを使用しているかどうかについて私に心配していました。 – Anther

0

を、私は直接あなたがアクティブレコードにSQLを通過しないと思います:

EDIT:フレームワークを使用しての年後、簡単な答えは単純に行うには です。しかし(アクティブレコードのYiiののバージョンでの作業から)アクティブなレコードの私の理解では、アクティブレコードがクラスCActiveRecordから、CDbConnectionに基づいて構築されていることである。

/** * CDbConnectionのデフォルトのデータベース接続@varすべてのアクティブレコードクラス。 *デフォルトでは、これは 'db'アプリケーションコンポーネントです。 Yiiの中 * @see getDbConnection */

これは、コードを使用することができますアクセスします。

$sql = 'select * from mytable'; 
$rows = Yii::app()->db->createCommand($sql)->queryAll(); 

をあなたはYiiのを使用していない場合は、DBにアクセスする方法を検索する必要がありますオブジェクト。

関連する問題