Дактрына: DATETIME змаўчанні NOW ()

Па Стывен Лойд Уоткин , у сераду 30 сьнежня 2009 6:30 вечара

Я змагаўся з стварэння схемы базы дадзеных для новых Zend Framework праекта. Я выкарыстаннем спрабуюць выкарыстоўваць дактрыну ORM для маёй мадэлі базы дадзеных. Мне трэба, каб стварыць схему так, каб ён дазволіў мне ўсталяваць дату і час па змаўчанні для `` DateTime слупкі, напрыклад, пры даданні новага паведамлення я атрымліваю бягучага часу. Пасля доўгіх пошукаў і эксперыментаў я знайшоў рашэнне, таму я дзялю яго.

У вашай схеме YAML файл проста зрабіць наступнае:

 Паведамленне:
   actAs:
     Timestampable:
       Створана:
         Назва: created_at
         Тып: пазнака
         Фармат: YMD H: я: S
       Абноўлена:
         Назва: last_updated
         Тып: пазнака
         Фармат: YMD H: я: S
   Стоўбцаў:
     ID:
       тып: цэлы лік
       першасны: праўдзівы
       автоинкремент: праўдзівы
     Назва: радок (255)
     Электронная пошта: радок (300)
     паведамленне: радок (2000)

Калі, з другога боку, вы не жадаеце `` updated_at калонцы вы можаце выкарыстоўваць наступныя:

 Паведамленне:
   actAs:
     Timestampable:
       Створана:
         Назва: created_at
         Тып: пазнака
         Фармат: YMD H: я: S
       Абноўлена:
         інвалідаў: праўдзівы
   Стоўбцаў:
     ID:
       тып: цэлы лік
       першасны: праўдзівы
       автоинкремент: праўдзівы
     Назва: радок (255)
     Электронная пошта: радок (300)
     паведамленне: радок (2000)

5 Адказы на "дактрыны: DATETIME змаўчанні NOW ()"

  1. Томас Колман кажа:

    Гэта працавала задавальненне для мяне: D дзякуй за гэта, я бачыў нешта накшталт гэтага, калі глядзеў на дактрыну прыкладаў, але, калі я сапраўды хацеў зрабіць гэтага я не магу знайсці што-небудзь аб гэтым хе-хе.

  2. Місаіл кажа:

    Дзякуй вам вялікі за вашу працу.

  3. Брэйдзі кажа:

    Я думаю, што вы хочаце фармат: YMD H: я: S

  4. Дзякуй, адзначыўшы, што з яго былі выпраўленыя ў жывых код, але, відавочна, не тут:)

  5. Ф. кажа:

    Звярніце ўвагу, што SQL змаўчанні не працуе так жа, як Timestampable. Паказаць
    http://stackoverflow.com/questions/2938655/how-to-define-current-timestamp-in-yaml-with-doctrine/3705090 # 3705090

Напісаць адказ













Панарама Тэма Themocracy

8 наведвальнікаў зараз
5 чалавек, 3-ботаў, 0 карыстальнікаў
Макс наведвальнікаў сёння: 14: 03:51 AM UTC
У гэтым месяцы: 26 у 2011/05/07 12:35 раніцы UTC
У гэтым годзе: 130 у 2011/03/28 10:40 вечара UTC
За ўвесь час: 130 у 2011/03/28 10:40 вечара UTC