Coverage for src/django_audit_log/migrations/0004_alter_accesslog_user_agent_loguseragent_and_more.py: 100%

5 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-05-02 11:43 +0700

1# Generated by Django 5.1.7 on 2025-04-02 07:39 

2 

3import django.db.models.deletion 

4from django.db import migrations, models 

5 

6 

7class Migration(migrations.Migration): 

8 

9 dependencies = [ 

10 ('django_audit_log', '0003_alter_accesslog_data_alter_accesslog_ip_and_more'), 

11 ] 

12 

13 operations = [ 

14 migrations.AlterField( 

15 model_name='accesslog', 

16 name='user_agent', 

17 field=models.TextField(blank=True, editable=False, help_text='User Agent string (deprecated)', null=True), 

18 ), 

19 migrations.CreateModel( 

20 name='LogUserAgent', 

21 fields=[ 

22 ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), 

23 ('user_agent', models.TextField(editable=False, unique=True)), 

24 ('browser', models.CharField(blank=True, editable=False, max_length=50, null=True)), 

25 ('browser_version', models.CharField(blank=True, editable=False, max_length=20, null=True)), 

26 ('operating_system', models.CharField(blank=True, editable=False, max_length=50, null=True)), 

27 ('device_type', models.CharField(blank=True, editable=False, max_length=20, null=True)), 

28 ('is_bot', models.BooleanField(default=False, editable=False)), 

29 ], 

30 options={ 

31 'verbose_name': 'Log User Agent', 

32 'verbose_name_plural': 'Log User Agents', 

33 'indexes': [models.Index(fields=['browser'], name='django_audi_browser_65f0aa_idx'), models.Index(fields=['operating_system'], name='django_audi_operati_c5de1a_idx'), models.Index(fields=['device_type'], name='django_audi_device__424a4f_idx'), models.Index(fields=['is_bot'], name='django_audi_is_bot_967733_idx')], 

34 }, 

35 ), 

36 migrations.AddField( 

37 model_name='accesslog', 

38 name='user_agent_normalized', 

39 field=models.ForeignKey(blank=True, editable=False, help_text='Normalized user agent information', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='access_logs', to='django_audit_log.loguseragent'), 

40 ), 

41 ]