Я пытаюсь сохранить свой объект в БД с помощью этого кода:
$preview = new ProjectProductPreview();
$preview->user_id = $user_id;
$preview->path = $preview_url;
$preview->type = $type;
$preview->project_product_id = $product_id;
$preview->save();
И у меня возникла странная ошибка. Эта ошибка возникает при вызове метода save().
Я проверил журналы laravel, есть эта ошибка. Я могу это отладить именно потому, что в этом случае стек ошибок имеет только две позиции
[2015-02-17 09:37:30] production.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to a member function getKey() on a non-object' in /var/www/erp/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Collection.php:133
Stack trace:
#0 [internal function]: Illuminate\Exception\Handler->handleShutdown()
#1 {main} [] []
Моя модель выглядит так:
class ProjectProductPreview extends BaseModel {
protected $table = 'project_products_preview';
public function user() {
return $this->belongsTo('User');
}
public function project_product() {
return $this->belongsTo('ProjectProduct', 'project_product_id');
}
public function projectProduct()
{
return $this->belongsTo('ProjectProduct', 'project_product_id');
}
public function message() {
return $this->belongsToMany('Message');
}
public function getThumb() {
$path = $this->path;
$thumb_path = str_replace('.jpg', '_70.jpg', $path);
return $thumb_path;
}
public function fullPath() {
return public_path($this->path);
}
public function getPath()
{
return $this->path;
}
public function getUrlAttribute() {
$product_id = $this->project_product_id;
return '/product/' . $product_id . '#' . $this->id;
}
public function isAccepted()
{
if($this->accepted==1){
return true;
}
return false;
}
public function accept()
{
ProjectProductPreview::where('project_product_id',$this->project_product_id)->update(array('accepted'=>0));
$this->accepted=1;
$this->save();
Event::fire('project_product_preview.accepted', array($this));
}
public function acceptRemove()
{
$this->accepted=0;
$this->save();
Event::fire('project_product_preview.remove_accept', array($this));
}
}
Подробнее здесь: https://stackoverflow.com/questions/285 ... y-on-a-non
Ошибка при сохранении модели в Laravel. 'Вызов функции-члена getKey() для объекта, не являющегося объектом' ⇐ Php
Кемеровские программисты php общаются здесь
1728532125
Anonymous
Я пытаюсь сохранить свой объект в БД с помощью этого кода:
$preview = new ProjectProductPreview();
$preview->user_id = $user_id;
$preview->path = $preview_url;
$preview->type = $type;
$preview->project_product_id = $product_id;
$preview->save();
И у меня возникла странная ошибка. Эта ошибка возникает при вызове метода save().
Я проверил журналы laravel, есть эта ошибка. Я могу это отладить именно потому, что в этом случае стек ошибок имеет только две позиции
[2015-02-17 09:37:30] production.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to a member function getKey() on a non-object' in /var/www/erp/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Collection.php:133
Stack trace:
#0 [internal function]: Illuminate\Exception\Handler->handleShutdown()
#1 {main} [] []
Моя модель выглядит так:
class ProjectProductPreview extends BaseModel {
protected $table = 'project_products_preview';
public function user() {
return $this->belongsTo('User');
}
public function project_product() {
return $this->belongsTo('ProjectProduct', 'project_product_id');
}
public function projectProduct()
{
return $this->belongsTo('ProjectProduct', 'project_product_id');
}
public function message() {
return $this->belongsToMany('Message');
}
public function getThumb() {
$path = $this->path;
$thumb_path = str_replace('.jpg', '_70.jpg', $path);
return $thumb_path;
}
public function fullPath() {
return public_path($this->path);
}
public function getPath()
{
return $this->path;
}
public function getUrlAttribute() {
$product_id = $this->project_product_id;
return '/product/' . $product_id . '#' . $this->id;
}
public function isAccepted()
{
if($this->accepted==1){
return true;
}
return false;
}
public function accept()
{
ProjectProductPreview::where('project_product_id',$this->project_product_id)->update(array('accepted'=>0));
$this->accepted=1;
$this->save();
Event::fire('project_product_preview.accepted', array($this));
}
public function acceptRemove()
{
$this->accepted=0;
$this->save();
Event::fire('project_product_preview.remove_accept', array($this));
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/28558998/error-when-i-save-model-in-laravel-call-to-a-member-function-getkey-on-a-non[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия