J'ai un problème en utilisant acts_as_textiled et has_foreign_language plugins ensemble.Extension d'un attribut getter existant dans le modèle de rails
TextElement mon modèle dans mon application
class TextElement < ActiveRecord::Base
has_foreign_language :value
acts_as_textiled :value
HasForeignLanguage
def has_foreign_language(*args)
args.each do |field|
# Define the Getter
define_method(field.to_s) do
.
.
.
ActsAsTextiled
def acts_as_textiled(*attributes)
.
.
.
attributes.each do |attribute|
define_method(attribute) do |*type|
.
.
.
Les deux plugins utilisent define_method et qui dans tous les cas j'appelle les mixins dans TextElement, le dernier substitue le getter défini précédemment.
Existe-t-il un moyen de sauvegarder le getter existant et de l'appeler dans le getter nouvellement défini? similaire à l'utilisation de super si elles ont été héritées.
J'ai fourchu ces plugins donc tout est juste jeu là.
Toute aide appréciée.
Savez-vous ce qui se passe ici? les docs pour alias_method_chain sont très déroutants. –
S'il vous plaît google pour alias_method_chain, il y a beaucoup d'explications sur ce qu'il fait – Julik