1
プラグインは、User
というモデルを提供します。それは私のアプリでそれを開くことが可能ですか?メインRailsアプリケーションのプラグインモデルを再オープン
app/models/user.rb
を作成して試してみると、モデル全体がオーバーライドされ、元のプラグインメソッドは使用できなくなります。
プラグインは、User
というモデルを提供します。それは私のアプリでそれを開くことが可能ですか?メインRailsアプリケーションのプラグインモデルを再オープン
app/models/user.rb
を作成して試してみると、モデル全体がオーバーライドされ、元のプラグインメソッドは使用できなくなります。
これは私がこれまでに見つかった唯一の方法である:
# app/models/plugin_user.rb
class PluginUser
def self.load
User.class_eval do
# my code here
end
end
end
# plugin model:
class User
# ...
end
PluginUser.load
プラグインのコードを変更せずにこれを行う方法があった場合、それはいいだろう。この場合、プラグインは私のものなので問題はありませんが、別のプラグインに同じことをする必要があれば、私はそれをフォークする必要があります。
どのようにUserクラスを再度開いていますか? (in app/models/user.rb) –
'class User
Ivan
ちなみに、私は 'lib'フォルダのファイルから' class_eval'を使うことができたと思います。しかし、すべての変更で再起動し、app/models上で再オープンする必要があります。 – Ivan