Was ist der richtige Weg, um eine Setter-Methode in Ruby on Rails zu überschreiben?

Ich verwende Ruby on Rails 3.2.2 und möchte wissen, ob das Folgende eine "richtige" / "richtige" / "sichere" Methode ist, um eine Setter-Methode für ein my class-Attribut zu überschreiben.

<code>attr_accessible :attribute_name

def attribute_name=(value)
  ... # Some custom operation.

  self[:attribute_name] = value
end
</code>

Der obige Code scheint wie erwartet zu funktionieren. Jedoch,Ich würde gerne wissen, ob ich mit dem obigen Code in Zukunft Probleme haben werde oder zumindest welche Probleme "sollte ich erwarten" / "könnte" mit Ruby on Rails auftreten. Wenn dies nicht der richtige Weg ist, um eine Setter-Methode zu überschreiben, was ist der richtige Weg?

Hinweis: Wenn ich den Code verwende

<code>attr_accessible :attribute_name

def attribute_name=(value)
  ... # Some custom operation.

  self.attribute_name = value
end
</code>

Ich erhalte folgenden Fehler:

<code>SystemStackError (stack level too deep):
  actionpack (3.2.2) lib/action_dispatch/middleware/reloader.rb:70
</code>

Antworten auf die Frage(5)

Ihre Antwort auf die Frage