implement user database deletion
- modify userdbs.models.UserDatabase.delete to perform deletion of database user if it has no other databases assigned - implement userdbs.views.DeleteUserDatabase - add URL pattern 'delete_userdatabase' to userdbs.urls - add template userdbs/userdatabase_confirm_delete.html - add link to 'delete_userdatabase' on hosting package detail page - add changelog entry
This commit is contained in:
parent
d5eccafea7
commit
64e3f97330
6 changed files with 75 additions and 4 deletions
|
@ -287,10 +287,13 @@ class UserDatabase(TimeStampedModel, models.Model):
|
|||
:py:meth:`django.db.models.Model.delete`
|
||||
|
||||
"""
|
||||
if self.db_user.db_type == DB_TYPES.pgsql:
|
||||
db_user = self.db_user
|
||||
if db_user.db_type == DB_TYPES.pgsql:
|
||||
delete_pgsql_database.delay(self.db_name).get()
|
||||
elif self.db_user.db_type == DB_TYPES.mysql:
|
||||
delete_mysql_database.delay(self.db_name, self.db_user.name).get()
|
||||
elif db_user.db_type == DB_TYPES.mysql:
|
||||
delete_mysql_database.delay(self.db_name, db_user.name).get()
|
||||
else:
|
||||
raise ValueError('Unknown database type %d' % self.db_type)
|
||||
super(UserDatabase, self).delete(*args, **kwargs)
|
||||
if not db_user.userdatabase_set.exists():
|
||||
db_user.delete()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue