2015-10-01 3 views
0

Я попытался сохранить данные в mysql с guid в качестве основного ключа, почему laravel возвращает значение 0 для id, когда оно было сохранено как guid? У кого-нибудь есть эта проблема раньше? это работает на Laravel 4, но не на 5Laravel return id 0 после сохранения

$data = new Question; 
     $data->id = \Uuid::generate(4); 
     $data->value = $question; 
     if($data->save()) 
      return $data; 
     return null; 

ответ

0

ID должен быть один из fillable полей в модели. Если нет, то он защищен. Также убедитесь, что у него нет auto incrent.

+0

, когда я положил его на заполняемых полях выводит {} – Nean

+0

Какой тип имеет это при его переносе? Приращение или целое число? (Я имею в виду файл миграции, а не таблицу mysql). Чтобы найти проблему, разместите свою модель пользователя и файл миграции. – mimo

+0

Я использую строку в моей миграции – Nean

0

Как МВ сказал убедитесь, что идентификатор не автоматически увеличивается на единицу и добавить это заявление в вашей модели:

public $incrementing = false; 

Проверьте примечание в документации: http://laravel.com/docs/4.2/eloquent#insert-update-delete

+0

yap. Я уже поставил это, также заполняемый. I – Nean

+0

Вы пытались использовать метод create в модели вопроса вместо сохранения? – nteath

+0

Да, в любом случае он не вернет идентификатор gui. Я решил использовать автоинкремент на данный момент – Nean