0

次のコードに基づいてデータベースのフィールドを更新できない理由がわかりません。

$this->User->id = 1;
$this->User->saveField('image','img/default_pic.png');

基本的に、Dbの現在の画像を新しい画像に変更したいと思います。

上記のコードは、現在imageフィールドにある値をクリアするだけで、何も追加しません。

例として、これは何が起こるかです:

id    username    image
=============================
1     admin       mypic.jpg
2     john        johnPic.jpg

上記のコードを実行すると、次の結果が得られます

id    username    image
=============================
1     admin       
2     john        johnPic.jpg

私は実際に何が起こっているのか混乱しています

4

2 に答える 2

2

解決しました!

戻ってuser.phpモデルクラスを確認することにしました。以前に使用を試みてMeioUpload諦めたことがあることに気付きましたが、var actsAsエントリを削除することはありませんでした。

コメントアウトするとすぐに写真をアップロードできるようになります。

beforeSave次のブログによると、この問題に遭遇する可能性のある他の人にとっても、この種の問題を引き起こす可能性があります:http: //blog.phplabs.net/2011/11/cakephp-savefield-not-working.html

ありがとう、

于 2012-06-29T13:18:26.023 に答える
1

SQLログは何が起こっていると言っていますか?

私の推測では、あなたは実際に次のようなことをしていると思います

$this->User->saveField('image', $variable) 

スペルが間違って$variableいるか、空です。

于 2012-06-29T10:21:23.653 に答える