mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			23 lines
		
	
	
		
			639 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			639 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| from django.db import migrations, models
 | |
| 
 | |
| 
 | |
| def raise_error(apps, schema_editor):
 | |
|     # Test atomic operation in non-atomic migration is wrapped in transaction
 | |
|     Editor = apps.get_model("migrations", "Editor")
 | |
|     Editor.objects.create(name="Test Editor")
 | |
|     raise RuntimeError("Abort migration")
 | |
| 
 | |
| 
 | |
| class Migration(migrations.Migration):
 | |
|     atomic = False
 | |
| 
 | |
|     operations = [
 | |
|         migrations.CreateModel(
 | |
|             "Editor",
 | |
|             [
 | |
|                 ("name", models.CharField(primary_key=True, max_length=255)),
 | |
|             ],
 | |
|         ),
 | |
|         migrations.RunPython(raise_error, reverse_code=raise_error, atomic=True),
 | |
|     ]
 |