2017-05-09 5 views
1

Ich baue mein eigenes Schmuckstück und möchte ein ActiveCord-Modell enthüllen. Wie kann ich das machen?Wie kann ich ActiveRecord in meinem benutzerdefinierten Edelstein verwenden?

Was ich habe, ist jetzt:

require 'active_record' 
module MyGem 
    class MyModel < ApplicationRecord 
    end 
end 

und in meiner gemspec Datei:

spec.add_dependency 'activerecord', '>= 5.0.0' 

und wenn ich versuche, meine Anwendung tun up, die dieses Juwel haben, ich habe:

`<module:MyGem>': uninitialized constant MyGem::ApplicationRecord 
+0

Nun ja, wo ist Ihre 'ApplicationRecord' Klasse? Haben Sie darüber nachgedacht, wie Sie Verbindungsinformationen dafür bereitstellen? Und vielleicht brauchen Sie auch Migrationen in diesem Juwel? Es gibt viele bewegliche Teile in "Active Records von einem Edelstein". –

+0

ApplicationRecord befindet sich in Active_record gem. Ich habe bereits eine Migration, die in das App-Verzeichnis kopiert wird. Die Verbindungsinformationen stammen aus den Verbindungseinstellungen der App. Habe ich recht? – jonatasdaniel

+0

"ApplicationRecord ist auf active_record gem" - ist es aber? Wenn es so wäre, würde es gefunden werden. Tipp: Suchen Sie in Ihrer Rails-App danach. –

Antwort

0

Sieht aus wie ApplicationRecord nicht im ActiveRecord-Juwel ist, wie ich ursprünglich dachte. Ich würde einfach die Basis-Active-Record-Klasse als Superklasse verwenden.

require 'active_record' 
module MyGem 
    class MyModel < ActiveRecord::Base 
    end 
end 
Verwandte Themen