Ich verwende Ruby on Rails 3 und ich möchte überschreiben (möglicherweise in der Modelldatei) die as_json
o to_json
Methode, um respond_to
eine HTTP-Anfrage, ohne einige Informationen zu enthalten.
In meinem Konto Modell Ich habe
def as_json(options = {})
super(
:except => [
:password
]
)
end
In meinem Controller habe ich
format.json {
render :json => @account, :status => 200
}
Wenn ich eine Anfrage stelle, zum Beispiel an /account/1.json
Ich habe auch die Passwortattribute zurück, die ich aus Sicherheitsgründen nicht haben möchte.
Also, Wie kann ich verhindern, dass bestimmte Informationen aufgenommen werden?
Ich kann dies tun und es funktioniert
format.json {
render :json => @account.to_json(:except => [:password]), :status => 200
}
aber ich muss es tun Refactor .