2016-08-09 33 views
0

Ich bin ein Neuling in Ruby, und ich versuche, eine Rails App für den Unterricht zu machen. Das Problem ist, dass ich neu dabei bin. Ich bin in eine Sackgasse geraten und ich weiß nicht, wie ich meine Ziele am besten erreichen kann.Wie erstelle ich ein tägliches "Check-in" in einer Rails App?

Meine App ist dies:

  • Ein Gewohnheit-Gebäude App, wo Sie ein tägliches Ziel gesetzt, und eine Wette mit einem Freund eingestellt, dass Sie dieses Ziel jeden Tag für 30 Tage erreichen.
  • Dann checken Sie jeden Tag ein, um zu bestätigen, dass Sie diese Gewohnheit an diesem Kalendertag praktiziert haben.
  • Wenn Sie nicht einchecken, scheitern Sie die Herausforderung und Ihr Freund gewinnt die Wette.

Bis jetzt habe ich meine Modelle eingerichtet und habe Authentifizierung mit Devise.

Wie empfehlen Sie am besten, wenn ich das "Check-in" einstelle?

Alle und alle Vorschläge und Hilfe sehr geschätzt, danke!

Antwort

2

Sie können das Modul Trackable für Ihre Bedürfnisse verwenden.

Es wird mit folgenden Spalte verfolgen

sign_in_count - Erhöhter ein Zeichen jedes Mal in gemacht wird (durch Form, openid, oauth)

current_sign_in_at - Ein Zeitstempel aktualisiert, wenn sich der Benutzer in

last_sign_in_at - Hält den Zeitstempel des vorherigen Zeichens in

current_sign_in_ip - der Remote-IP aktualisiert, wenn die Benutzer Zeichen i n

last_sign_in_ip - Hält das Remote-IP des vorherigen Zeichen in

können Sie machen Ihre Logik auf diesen Feldern abhängt.

Fore weitere Informationen besuchen Sie bitte: http://www.rubydoc.info/github/plataformatec/devise/master/Devise/Models/Trackable

+0

Hallo Hardik, Dank für die Eingabe. Trackbar ist definitiv eine Option, aber der Nachteil davon ist, dass es ein Zeichen als "Check-in" protokolliert, was nicht wünschenswert ist, wenn Leute sich einloggen, um Kommentare zu überprüfen usw., aber ihr Ziel nicht wirklich erreicht haben der Tag. –

+0

Ja, dafür müssen Sie eine Geschäftslogik erstellen, oder Sie können den Crone-Job so einrichten, dass er jeden Tag ausgeführt wird und überprüft, ob die Aufgabe ausgeführt wird oder nicht. Bitte referenzieren "wann immer Juwel". –