我正在实现一个很棒的插件,我发现它可以根据用户行为向用户奖励积分/徽章/排名。它被称为 Merit,可以在这里找到:https ://github.com/tute/merit
我有两个模型:“发布”和“标签”。关联是:帖子有很多标签,标签属于一个帖子。
当用户创建“帖子”时,我会向他们奖励积分。每当调用帖子控制器的“创建”操作时,我都会将插件配置为奖励积分。
问题:
当我启动服务器时,我会通过我的流程来创建带有任何关联标签的新帖子。这完美地工作。在我以任何方式编辑我的代码(在控制器或模型中)之前,它将完美运行。编辑后,在尝试创建新帖子时,我会收到此错误:
undefined method `attr_accessible' for Merit::Action:Class
只要我更改文件的基本内容(这包括简单地添加调试“puts”语句),我进行什么样的编辑似乎并不重要。此时,我根本无法再创建帖子,因为每次尝试创建帖子都会导致相同的错误。然后,一旦我重新启动 WEBrick,它将再次工作(直到我再次编辑代码)。
这里发生了什么? 为什么编辑我的代码的简单行为会导致 attr_accessible 在 Merit 插件中突然变得未定义,直到我重新启动服务器?