mirror of
				https://github.com/usmannasir/cyberpanel.git
				synced 2025-10-27 00:06:35 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| class backupRouter:
 | |
|     """
 | |
|     A router to control all database operations on models in the
 | |
|     auth application.
 | |
|     """
 | |
|     def db_for_read(self, model, **hints):
 | |
|         """
 | |
|         Attempts to read auth models go to auth_db.
 | |
|         """
 | |
|         if model._meta.app_label == 'backup':
 | |
|             return 'rootdb'
 | |
|         return None
 | |
| 
 | |
|     def db_for_write(self, model, **hints):
 | |
|         """
 | |
|         Attempts to write auth models go to auth_db.
 | |
|         """
 | |
|         if model._meta.app_label == 'backup':
 | |
|             return 'rootdb'
 | |
|         return None
 | |
| 
 | |
|     def allow_relation(self, obj1, obj2, **hints):
 | |
|         """
 | |
|         Allow relations if a model in the auth app is involved.
 | |
|         """
 | |
|         if obj1._meta.app_label == 'backup' or \
 | |
|            obj2._meta.app_label == 'backup':
 | |
|            return True
 | |
|         return None
 | |
| 
 | |
|     def allow_migrate(self, db, app_label, model_name=None, **hints):
 | |
|         """
 | |
|         Make sure the auth app only appears in the 'auth_db'
 | |
|         database.
 | |
|         """
 | |
|         if app_label == 'backup':
 | |
|             return db == 'rootdb'
 | |
|         return None
 |