2016-11-23 5 views
1

Я пытаюсь извлечь данные из своей базы данных с помощью метода find().cakePHP find() возвращает имя поля вместо значений столбца

Но когда я использую find ('all'), он возвращает значение столбца и имя столбца вместе, например: {"date_1": "2015-25-12"}, конечно, я хочу только значения из столбца.

Если я использую find ('list'), он возвращается пустым.

Это, как я пытаюсь получить мои данные:

$date1 = $this->Stocks->find('all', ['fields' => ['Stocks.date_1'], 'conditions' => ['Stocks.families_id' => $id]]); 

Это мой стол:

CREATE TABLE stocks 
(
    families_id integer, 
    date_1 date NOT NULL, 
    date_2 date, 
    created timestamp without time zone, 
    modified timestamp without time zone, 
    id serial NOT NULL, 
    CONSTRAINT stocks_pkey PRIMARY KEY (id) 
) 

Все остальное работает нормально, но это одна часть. Я использую PostgreSQL.

+0

ли вы указали в модели то, что ваш первичный ключ и поле вашего дисплея? – yBrodsky

+0

Я использовал bake, поэтому displayField и первичный ключ установлены в 'id'. –

+0

Но вы сказали, что если вы найдете «список», результат будет пуст. Если это происходит, что-то не так. – yBrodsky

ответ

1

У вас возникли проблемы с displayField.

Чтобы выбрать один столбец или набор столбцов, которые вы можете сделать, как этот

$date1 = $this->Stocks->find() 
     ->select(['date_1']) 
     ->where(['families_id' => $id]);