Factor the models to prepare for new ones related to the radio version
Other notable improvements:
- Define the default values to be able to use the built-in convenience method
`get_or_create`;
- Use the F helper to *atomically* increment the counters; the current method
could run into race conditions and miss increments.
The models remain functionally the same - also, their title is left unchanged to
not break compatibility and avoid a migration.
Change-Id: Iad86302d869705867efadf8cfd2e661dac1ff4f9
diff --git a/crashreport_stats/migrations/0002_version_and_versiondaily_with_defaults.py b/crashreport_stats/migrations/0002_version_and_versiondaily_with_defaults.py
new file mode 100644
index 0000000..0a58758
--- /dev/null
+++ b/crashreport_stats/migrations/0002_version_and_versiondaily_with_defaults.py
@@ -0,0 +1,72 @@
+# -*- coding: utf-8 -*-
+#
+# Set the default values for the Version and VersionDaily models.
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('crashreport_stats', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='version',
+ name='first_seen_on',
+ field=models.DateField(auto_now_add=True),
+ ),
+ migrations.AlterField(
+ model_name='version',
+ name='heartbeats',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='version',
+ name='other',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='version',
+ name='prob_crashes',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='version',
+ name='released_on',
+ field=models.DateField(auto_now_add=True),
+ ),
+ migrations.AlterField(
+ model_name='version',
+ name='smpl',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='versiondaily',
+ name='date',
+ field=models.DateField(auto_now_add=True),
+ ),
+ migrations.AlterField(
+ model_name='versiondaily',
+ name='heartbeats',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='versiondaily',
+ name='other',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='versiondaily',
+ name='prob_crashes',
+ field=models.IntegerField(default=0),
+ ),
+ migrations.AlterField(
+ model_name='versiondaily',
+ name='smpl',
+ field=models.IntegerField(default=0),
+ ),
+ ]