versuchen so etwas wie dieses
datetime = DateTime.civil(2007, 12, 4, 0, 0, 0, 0) # => Tue, 04 Dec 2007 00:00:00 +0000
datetime.to_formatted_s(:db) # => "2007-12-04 00:00:00"
datetime.to_s(:db) # => "2007-12-04 00:00:00"
datetime.to_s(:number) # => "20071204000000"
datetime.to_formatted_s(:short) # => "04 Dec 00:00"
datetime.to_formatted_s(:long) # => "December 04, 2007 00:00"
datetime.to_formatted_s(:long_ordinal) # => "December 4th, 2007 00:00"
datetime.to_formatted_s(:rfc822) # => "Tue, 04 Dec 2007 00:00:00 +0000"
auch können Sie Ihr eigenes Format wie folgt hinzu:
# config/initializers/time_formats.rb
Time::DATE_FORMATS[:month_and_year] = "%B %Y"
Time::DATE_FORMATS[:short_ordinal] = lambda { |time| time.strftime("%B #{time.day.ordinalize}") }
Es tut mir leid, aber es sagt "undefined Methode' strftime 'für Nil: NilClass " – daniel
Ah ... okay, diese Fehlermeldung bedeutet, dass Ihre Post.date ist ein Nil-Objekt (leer). Die Formatierungsmethode, die ich Ihnen gegeben habe, funktioniert, aber sie funktioniert nur zu einem echten Datum. Es klingt, als hätten Sie das Datum nicht in Ihrer Datenbank eingetragen. – Scott
das ist meine Tabelle. Ich habe dort auch Einträge: create_table "Deadlines",: force => true do | t | t.string "title" t.text "Inhalt" t.date "date" t.time "Zeit" t.integer "user_id" t.integer "course_id" t.datetime "created_at" t.datetime "updated_at" end – daniel