Wenn eine Konstante (in diesem Fall Ihre Klassenname) Rubin nicht gefunden werden kann, dann wird er versuchen, zu finden Verwenden eines Dateinamens basierend auf dem Konstantennamen. In diesem Fall wird es für MYobIdentifier
in einer Datei m_yob_identifier
(Es gibt ein paar verschiedenen Orte es für diese Datei aussehen würde)
Solange Sie sicher sein können, genannt suchen, dass die Integration
Klasse geladen wird, bevor jeder Versuch gemacht wird, ys MYobIdentifier
dann wird es immer definiert und Sie müssen sich keine Sorgen machen.
Auch in Ihrem Fall, ich nehme an, Sie werden es als Integration::MYobIdentifier
zugreifen in dem Fall Integration
wird immer geladen werden, bevor Sie versuchen, die Konstante aufzulösen.
Anmerkung: Ich glaube, Sie würden die Klasse als MyObIdentifier
besser sein Kapital Ich denke, wenn Sie diese beiden Links gehen, http://stackoverflow.com/questions/14739640/ruby-classes-within-classes -oder-Module-innerhalb-Module, http://urbanautomaton.com/blog/2013/08/27/rails-autoloading-hell/ erhalten Sie Ihre Antwort – Pramod