2017-01-03 2 views
0

Я столкнулся с этой странной проблемой с моими красноречивыми запросами.Eloquent не выбирает атрибуты даты при использовании where, где пункт

Моя модель выглядит как этот:

class MyModel extends Model { 
    // ... 
    $protected $dates = [ 
    "some_date", 
    ] 
} 

При использовании запроса, как этот:

$myModel = MyModel::find(1); 
echo $myModel->toJson(); 

я получаю этот выход:

{ 
    "id" : 1 
    "some_date" : "../../../" 
} 

Но когда я использую это запрос:

$myModel = MyModel::where('id', '=', 1)->get(); 
echo $myModel->toJson(); 

Я получаю этот странный вывод:

{ 
    "id" : 1 
} 

где положение не выбирает атрибуты даты! Почему это происходит?

+0

У ваших столбцов даты есть правильный тип данных? – swatkins

+1

Какие столбцы у вас есть для массивов '$ hidden 'и' $ visible' на модели? –

+0

Я не использую никаких $ видимых или $ скрытых атрибутов в своих моделях. –

ответ

0

Либо один из двух способов сделать это:

Если есть $hidden массив, определенный на модели, убедитесь, что она не включает в себя этот столбец.

--или--

Если нет $hidden массива, убедитесь, что нет $visible массива и, если есть $visible массив определен убедитесь, что столбцы, которые вы хотите в нем.

Laravel удаляет столбцы, которые скрыты или невидимы при сериализации в json.

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