Rechnen mit Zeit

Ich will folgendes:
2007-10-05 22:00:00 (aus der db)
minus 67 (Fahrzeit in min)

sollte 20:53 Abfahrtszeit rauskommen-

In php Zeiten habe ich das mit:
$db->sql_befehl(“SELECT DATE_SUB(’$a’,INTERVAL ‘$fahrtzeit_all’
DAY_MINUTE) FROM aktuelles”); gelöst…

Gibt es in RoR was smarteres, einen guten link…

Gruß und Danke

Werner

Werner L.
Lindenburger Allee 22 | 50931 Köln

0221.8805 635


http://www.webagentur-laude.de

Hi,

Werner L. schrieb:

Gibt es in RoR was smarteres, einen guten link…

Time.parse(‘2007-10-05 22:00:00’) - 67.minutes
=> Fri Oct 05 20:53:00 +0200 2007

http://api.rubyonrails.org/classes/ActiveSupport/CoreExtensions/Numeric/Time.html
http://www.ruby-doc.org/core/classes/Time.html

Viel Spass,

Gruß,
Roland


Moriz Softwareentwicklung
Roland M.
Theresienstraße 66
80333 München

http://www.moriz.de/

Tel: 089 / 216 685 91
Fax: 089 / 216 685 92
Mob: 0177 / 81 91 81 9 (bitte Rufnummer übertragen!)
Xing: https://www.xing.com/profile/Roland_MORIZ

Steuernummer: 145/334/35675
Finanzamt München III

t = Time.parse(‘2007-10-05 22:00:00’)
=> Fri Oct 05 22:00:00 +0200 2007

t - 67.minutes
=> Fri Oct 05 20:53:00 +0200 2007

Werner L. schrieb:

Hallo Werner,

ich weiss nicht, ob es der beste Ansatz ist, aber versuche mal
folgendes:

@starting_time = @now.to_time.ago(@minutes*60).to_s(:db)

wobei @now bei Dir 2007-10-05 22:00:00 und @minutes Deine 67 Minuten
sind.

Am 12.10.2007 um 13:58 schrieb Werner L.:

Ich will folgendes:
2007-10-05 22:00:00 (aus der db)
minus 67 (Fahrzeit in min)

sollte 20:53 Abfahrtszeit rauskommen-

Grüsse
Jan

Jan R.
[email protected]

Werner L. schrieb:

t = Time.parse(‘ein_string’) => gibt richtiges Ergebnis o.k.
wie geht da mit ner Variable aus der db?

ich habe @buchungszeit.b_abreise_zeit

t = Time.parse(’@buchungszeit.b_abreise_zeit’) `gibt ein wüstes Ergebnis
Klar. Weil den String den zu parsen versuchst nichteinmal annähernd was
mit einem Datum zu tun hat. :wink:

t = Time.parse(@buchungszeit.b_abreise_zeit) = Fehler.
Ich vermute mal @buchungszeit.b_abreise_zeit.class wird dir ein DateTime
liefern. Richtig?
Wenn ja dann einfach ein t =
Time.parse(@buchungszeit.b_abreise_zeit.to_s)
Dann sollte es richtig geparst werden. Hängt halt alles davon ab welcher
Datentyp dein b_abreise_zeit ist.

Daniel W. schrieb:

t = Time.parse(‘2007-10-05 22:00:00’)
=> Fri Oct 05 22:00:00 +0200 2007

t - 67.minutes
=> Fri Oct 05 20:53:00 +0200 2007

Hallo Daniel.
prima und danke.
allerdings gibt es noch ein Problem:

t = Time.parse(‘ein_string’) => gibt richtiges Ergebnis o.k.
wie geht da mit ner Variable aus der db?

ich habe @buchungszeit.b_abreise_zeit

t = Time.parse(’@buchungszeit.b_abreise_zeit’) `gibt ein wüstes Ergebnis
t = Time.parse(@buchungszeit.b_abreise_zeit) = Fehler.

Muß ich das was anderes als Time.parse nehmen?

Gruß

Werner L.
Lindenburger Allee 22 | 50931 Köln

0221.8805 635


http://www.webagentur-laude.de

Ok. Das ist klar. Dachte davon kann man ausgehen. :wink: Also dass es nicht
als Time Objekt vorliegt.
Das gezeigte mit dem Parse war nur um es eben schnell zeigen zu können
was gemeint ist.
Wenn @buchungszeit.b_abreise_zeit ein Time Objekt ist, trifft natürlich
das von Sebastian erwähnte zu!

Sebastian Röbke schrieb:

Hallo zusammen!

Daniel W. wrote:

t = Time.parse(@buchungszeit.b_abreise_zeit) = Fehler.
Ich vermute mal @buchungszeit.b_abreise_zeit.class wird dir ein DateTime
liefern. Richtig?
Wenn ja dann einfach ein t = Time.parse(@buchungszeit.b_abreise_zeit.to_s)
Dann sollte es richtig geparst werden. Hängt halt alles davon ab welcher
Datentyp dein b_abreise_zeit ist.

Falls @buchungszeit.b_abreise_zeit bereits als Objekt der Klasse Time
vorliegt, was in Rails z.B. bei einer MySQL-Spalte vom Typ datetime der
Fall sein sollte, braucht man das natürlich nicht erst nochmal in einen
String und dann wieder in ein Time Objekt verwandeln.

In dem Fall einfach
@buchungszeit.b_abreise_zeit - 67.minutes

Viele Grüße, Sebastian

Herzlichen Dank…an euch
das ist ja irre…so simple

RoR hat wieder 100 Punkte in meiner Hochachtung zugelegt…
Werner

Dann sollte es richtig geparst werden. Hängt halt alles davon ab
welcher Datentyp dein b_abreise_zeit ist.

Falls @buchungszeit.b_abreise_zeit bereits als Objekt der Klasse Time
vorliegt, was in Rails z.B. bei einer MySQL-Spalte vom Typ datetime
der Fall sein sollte, braucht man das natürlich nicht erst nochmal in
einen String und dann wieder in ein Time Objekt verwandeln.

Werner L.
Lindenburger Allee 22 | 50931 Köln

0221.8805 635


http://www.webagentur-laude.de

Hallo,

On 10/12/07, Werner L. [email protected] wrote:

Herzlichen Dank…an euch
das ist ja irre…so simple

RoR hat wieder 100 Punkte in meiner Hochachtung zugelegt…
Werner

vielleicht solltest Du aber wirklich einmal ein Buch wie “Agile Web
Development With Rails” komplett durchlesen. Muss ehrlicherweise
sagen, dass Deine Fragen extrem “basic” sind und habe das Gefühl, dass
Du noch viel mehr aus Rails herausholen könntest, wenn Du Dir die
Grundlagen aneignen würdest.

Nichts für Ungut, aber das ist nur ein Tipp.

Andreas

Andreas R. schrieb:

Nix für ungut Andreas…

vielleicht solltest Du aber wirklich einmal ein Buch wie “Agile Web
Development With Rails” komplett durchlesen.
mal abgesehen, das dieses Thema dort so nicht behandelt wird (es werden
nur jede Menge helper methoden vorgeführt),
wenn ich die Zeit dafür hätte … gerne

Leider hatte ich nicht die Möglichkeit eines Studiums…und erst vor 3
Jahren überhaupt angefangen zu programmieren.
Hoffe es nervt dich nicht zu sehr, wenn ich hier ab und an Sachen frage
die für dich ‘basics’ sind.

Muss ehrlicherweise
sagen, dass Deine Fragen extrem “basic” sind und habe das Gefühl, dass
Du noch viel mehr aus Rails herausholen könntest, wenn Du Dir die
Grundlagen aneignen würdest.

Ich bin dabei…

Gruß
Werner

Werner L.
Lindenburger Allee 22 | 50931
Köln
0221.8805 635


http://www.webagentur-laude.de

Hi,

Werner L. schrieb:

Andreas R. schrieb:

Nix für ungut Andreas…

vielleicht solltest Du aber wirklich einmal ein Buch wie “Agile Web
Development With Rails” komplett durchlesen.
mal abgesehen, das dieses Thema dort so nicht behandelt wird (es werden
nur jede Menge helper methoden vorgeführt),

guck mal hier:

=> Kapitel 17.2 Columns and Attributes
(Mapping von Date/Datetime felder in Ruby Objekte)

=> Kapitel 15.5 Time and Date Extensions
(also 42.minutes und das ganze syntactical sugar drumherum)

Grüße,
Roland


Moriz Softwareentwicklung
Roland M.
Theresienstraße 66
80333 München

http://www.moriz.de/

Tel: 089 / 216 685 91
Fax: 089 / 216 685 92
Mob: 0177 / 81 91 81 9 (bitte Rufnummer übertragen!)
Xing: https://www.xing.com/profile/Roland_MORIZ

Steuernummer: 145/334/35675
Finanzamt München III

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs