我正在构建Rails 5.2.x应用程序,并且正在寻找改善项目目录结构的方法。
我的应用程序中的某些模型类代表事件,我想将它们与其他不代表事件的类分开。
所以理想情况下,我希望有一个events
子目录:
[RAILS ROOT]/app/models/something.rb
[RAILS ROOT]/app/models/events/some_event.rb
其中分别包含Something
和SomeEvent
。
尽管如此,在这种情况下,Rails似乎要求我将事件类命名为Events::SomeEvent
。
我的实际类已经大量使用名称空间,因此名称又长又笨拙。我希望能够在开发时轻松地在视觉上分离事件类,而不必使用更长的名称。
此外,在发生事件的情况下,我也希望避免更改类名,因为加载历史数据会将名称反序列化为正确的类。
是否有一种方法可以在Rails中引入其他子目录而无需将它们表示为名称空间组件?如果是这样,我真的很想知道如何。