Как получить необработанное значение 'create_at' в базе данных (не объект, приведенный к ActiveSupport :: TimeWithZone) - PullRequest
23 голосов
/ 20 февраля 2011

Представьте, что у меня есть модель поста.

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

23|title_here|content_here|2011-02-20 08:01:55.583222|2011-02-20 08:01:55.583222

и два последних поля (2011-02-20 08:01:55.583222|2011-02-20 08:01:55.583222) - это поля create_at и updated_at.

Тогда

post = Post.find_by_id(23)

Вопрос : Как я могу получить строку create_at: "2011-02-20 08:01:55.583222" в базе данных?

Как мы знаем, post.created_at вернет объект ActiveSupport::TimeWithZone, а не необработанную строку.

Пожалуйста, помогите:)

Ответы [ 2 ]

40 голосов
/ 20 февраля 2011

использовать attribute_before_type_cast

Post.find(23).attributes_before_type_cast["created_at"]

или

Post.find(23).read_attribute_before_type_cast("created_at")

Редактировать

Вы также можете позвонить так:

Post.find(23).created_at_before_type_cast

в соответствии с Доступ к атрибутам до того, как они были типизированы .

0 голосов
/ 20 февраля 2011

Попробуйте

Post.find_by_id(23).created_at.to_s
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...