2015-08-21 9 views
5

Sagen wir, ich habe ein Modell Foo und ich bin ein Attribut Getter mutiert, etwa so:Zugang roh Eloquent mutiertes Attributwert in Laravel 5

class Foo extends Model 
{ 
    protected $table = 'foo'; 

    public function getSomeBarAttribute($value) 
    { 
     return some_function($value); 
    } 
} 

Gibt es eine Möglichkeit das Attribut der Rohwert zuzugreifen, Pre- Mutation?

Antwort

11

Die Methode, die Sie erhalten suchen ist getOriginal. Um den ursprünglichen Wert zu erhalten, den Sie verwenden könnten:

0

In-Modell wird dieses var definiert:

/** 
* The model attribute's original state. 
* 
* @var array 
*/ 
protected $original = array(); 

Es geschützt ist, so dass Sie eine Funktion hinzufügen sollten original Werte

(nicht getestet)

+1

Ja, ich habe im Wesentlichen eine neue Funktion namens 'rawSomeBar' erstellt, die' $ this-> Attribute ['some_bar'] 'zurückgibt. –