Si lo que desea es compartir modelos, puede agregar la otra carpeta de modelos de proyectos en su ruta de autocarga s:
rails new test1
rails new test2
cd test1
rails g model User
cd ../test2/
# ACTION REQUIRED: edit config/application.rb adding this line
# inside the class Application < Rails::Application block:
#
# config.autoload_paths += %W(#{config.root}/../test1/app/models)
#
mkdir db/migrate
cp ../test1/db/migrate/*_create_users.rb db/
mv db/*_create_users.rb db/migrate/
rake db:migrate
rails r 'puts User.inspect'
#=> User(id: integer, created_at: datetime, updated_at: datetime)
También puede configurar todo el asunto con el fin de tener las dos app/models
carpetas como privado, mediante una tercera carpeta compartida, añadiendo esto a los proyectos:
# config.autoload_paths += %W(/path/to/a/shared/folder)
Esta carpeta puede incluso no sea la misma carpeta para cada proyecto, por lo que podría ser una ruta a un submódulo de git, por ejemplo (si usa GIT, recomiendo esta solución).
Otra opción podría estar apuntando app/models
a una carpeta compartida con un enlace blando
¿Se puede cambiar el código en ambas API? o hay alguna restricción? –
@NigelThorne Seguramente puedo, ambos son construidos por mí. – Gotjosh