2016-04-15 2 views
0

Ich verwende Eloquent und ich habe Event-Modell. Es hat created_at Feld. Ich versuche, einige Ereignisse auszuwählen und für jede eine Eigenschaft type mit Wert basierend auf der Spalte created_at festzulegen. Zum Beispiel wenn created_at < heute das Ereignis ist bereits übergeben und die type Eigenschaft ist "bestanden". Gibt es eine Möglichkeit, dies über den Abfrage-Generator zu tun Event::select('if created_at < NOW() übergibt else if .... as type');Eloquent ORM - Name für Spalte auf Bedingung

Antwort

0

Es gibt eine Reihe von Möglichkeiten, um Ihr Problem zu lösen. Sie können entweder eloquente Bereiche oder Mutatoren verwenden.

https://laravel.com/docs/5.2/eloquent#query-scopes -> Check für Lokale Scopes https://laravel.com/docs/5.2/eloquent-mutators -> prüfen für Accessoren & Mutatoren

Ich schätze, dass Sie die neueste Laravel LTM Version verwenden.

Die lokale Bereichslösung ermöglicht es Ihnen, Event::passed()->etc() zu tun, und die Accessoren fügen ein Flag an das Event-Objekt an, das passed => true heißt.