Symfony: загрузка данных прибора с пустыми полями? - PullRequest
0 голосов
/ 18 мая 2011

Я заметил, что propel загружает данные фикстуры в базу данных, хотя мы не указали некоторые обязательные поля таблицы в файлах .yml.

Каковы причины этого?Более простая разработка и т. Д .?

Схема:

  jobeet_job:
    id:           ~
    category_id:  { type: integer, foreignTable: jobeet_category, foreignReference: id, required: true }
    type:         { type: varchar(255) }
    company:      { type: varchar(255), required: true }
    logo:         { type: varchar(255) }
    url:          { type: varchar(255) }
    position:     { type: varchar(255), required: true }
    location:     { type: varchar(255), required: true }
    description:  { type: longvarchar(255), required: true }
    how_to_apply: { type: longvarchar(255), required: true }
    token:        { type: varchar(255), required: true, index: unique }
    is_public:    { type: boolean, required: true, default: 1 }
    is_activated: { type: boolean, required: true, default: 0 }
    email:        { type: varchar(255), required: true }
    expires_at:   { type: timestamp, required: true }
    created_at:   ~
    updated_at:   ~

Итак, expires_at требуется: true.

Данные:

  expired_job:
    category_id:  design
    company:      Extreme sensio
    position:     Web Designer
    location:     Paris, France
    description:  |
      Lorem ipsum dolor sit amet.
    how_to_apply: |
      Send your resume to fabien.potencier at sensio.com.
    is_public:    true
    is_activated: true
    token:        job_expired

Итак,нигде не установлено поле expires_at.

И все же я могу запустить

symfony propel: задача загрузки данных.

Ответы [ 2 ]

1 голос
/ 18 мая 2011

В другом вашем вопросе вы цитируете метод save класса JobeetJob.Там вы можете видеть, что expires_at устанавливается там, если не было установлено ранее вручную - поэтому заполняет обязательное поле, так что все хорошо.

1 голос
/ 18 мая 2011

Эта ссылка http://dev.mysql.com/doc/refman/5.0/en/timestamp.html объясняет значения по умолчанию для типа TIMESTAMP в MySQL (я предполагаю, что вы используете MySQL).

...