2012-06-29 3 views
0

Я не понимаю, почему я не могу обновить поле в базе данных на основе следующего кода:CakePHP 1.3: Проблема с saveField

$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 

Я перепутал на то, что на самом деле происходит

+0

Попробуйте это: $ this-> User-> id = 1; $ this-> User-> saveField ('image', 'default_pic.png'); – chetanspeed511987

+0

Он не работает ни ... Я не получаю это –

ответ

2

РЕШЕННЫЙ!

я решил вернуться и проверить на моем user.php классе модели и понял, что я пытался использовать MeioUpload до и сдался, но я никогда не извлекал var actsAs записи.

Как только я прокомментировал это, теперь я могу загружать фотографии.

Для любого другого, что может прийти по этому вопросу, beforeSave может также причиной такого рода проблем, в соответствии со следующим блога: http://blog.phplabs.net/2011/11/cakephp-savefield-not-working.html

Спасибо,

1

Что говорит SQL-журнал?

Я думаю, вы на самом деле делать что-то вроде

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

и $variable либо опечатка или пуст.

+0

Я думал, поэтому я попытался с реальной строкой. Код, который вы видите в моем вопросе, - это фактический код, который я использую. Я проверю дамп mysql, чтобы узнать, что происходит. –

+0

Он отправляется через jQuery, и я не знаю, как выполнить 'sql_dump'. Я попробовал 'CakeLog :: write ('debug', $ this-> element ('sql_dump')) ;, но он ничего не пишет. –

+0

FIXED !. 'user.php',' actAs' проблема. Проверьте мой ответ выше ... Спасибо за помощь, хотя –

Смежные вопросы