forest_packerをルーティングに追加して

ルータークラスのallow_migrateメソッド内の条件文にforest_packerアプリケーションを追加することで、forest_packerアプリケーションのモデルも適切なデータベースにマイグレートされるようになります。以下は変更したコードです:

python
class MyAppRouter: def db_for_read(self, model, **hints): if model._meta.app_label == 'value_search': return 'value_search' elif model._meta.app_label == 'forest_packer': return 'default' return None def db_for_write(self, model, **hints): if model._meta.app_label == 'value_search': return 'value_search' elif model._meta.app_label == 'forest_packer': return 'default' return None def allow_relation(self, obj1, obj2, **hints): if obj1._meta.app_label == 'value_search' and obj2._meta.app_label == 'value_search': return True elif obj1._meta.app_label == 'forest_packer' and obj2._meta.app_label == 'forest_packer': return True elif obj1._meta.app_label == 'default' and obj2._meta.app_label == 'default': return True return None def allow_migrate(self, db, app_label, model_name=None, **hints): if db == 'value_search' and app_label == 'value_search': return True elif db == 'default' and (app_label == 'forest_packer' or app_label == 'default'): return True return False

この変更により、forest_packerアプリケーションのモデルもdefaultデータベースにマイグレートされるようになります。

未分類

Posted by ぼっち