# total_points est une table de somme avec la colonne "total_earned_points".
module MyModel::UserExtension
def self.prepended(base)
base.has_many :user_points, class_name: 'MyModel::UserPoint'
base.has_one :total_point, class_name: 'MyModel::TotalPoint'
end
end
reloadable_patch do |plugin|
User.class_eval { prepend MyModel::UserExtension }
end
add_to_class(:user, :total_earned_points) do
# self.user_points.sum(:reward_points)
self.total_point[:total_earned_points]
end
Je suis très nouveau dans Rails. Pourriez-vous me dire ce qui ne va pas ?
Merci beaucoup !
Désolé, cela n’est peut-être pas d’une grande aide, mais c’est rapide.
Quelque chose qui devrait être un tableau est nil. Peut-être que args est nil et doit être un [] ?
Vous pouvez également consulter GitHub - discourse/all-the-plugins pour essayer de trouver des exemples de ce que vous essayez de faire (je ne peux pas vraiment dire ce que vous essayez de faire).
Découvrez discourse-calendar. Il ajoute une classe Event, qui semble assez analogue à ce que vous essayez de faire.
Il y a un tas de plugins qui ont un bloc reloadable_patch similaire, cependant.