Skip to content

Commit a4f77e0

Browse files
Switch to an autoincremented integer ID
1 parent e91b8eb commit a4f77e0

File tree

3 files changed

+52
-7
lines changed

3 files changed

+52
-7
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Generated by Django 2.2.2 on 2019-06-29 11:49
2+
3+
from django.db import migrations, models
4+
5+
APP_NAME = "rest_framework_api_key"
6+
MODEL_NAME = "apikey"
7+
DEPENDENCIES = [(APP_NAME, "0004_prefix_hashed_key")]
8+
9+
10+
class Migration(migrations.Migration):
11+
12+
dependencies = DEPENDENCIES
13+
14+
operations = [
15+
migrations.RemoveField(model_name=MODEL_NAME, name="id"),
16+
migrations.AddField(
17+
model_name=MODEL_NAME,
18+
name="id",
19+
field=models.AutoField(
20+
auto_created=True,
21+
primary_key=True,
22+
serialize=False,
23+
verbose_name="ID",
24+
),
25+
),
26+
]

rest_framework_api_key/models.py

-7
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,8 @@ def assign_key(self, obj: "AbstractAPIKey") -> str:
1515
key, prefix, hashed_key = self.key_generator.generate()
1616
except TypeError: # Compatibility with < 1.4
1717
key, hashed_key = self.key_generator.generate()
18-
pk = hashed_key
1918
prefix, hashed_key = split(hashed_key)
20-
else:
21-
pk = concatenate(prefix, hashed_key)
2219

23-
obj.id = pk
2420
obj.prefix = prefix
2521
obj.hashed_key = hashed_key
2622

@@ -63,9 +59,6 @@ class APIKeyManager(BaseAPIKeyManager):
6359
class AbstractAPIKey(models.Model):
6460
objects = APIKeyManager()
6561

66-
id = models.CharField(
67-
max_length=100, unique=True, primary_key=True, editable=False
68-
)
6962
prefix = models.CharField(max_length=8, unique=True, editable=False)
7063
hashed_key = models.CharField(max_length=100, editable=False)
7164
created = models.DateTimeField(auto_now_add=True, db_index=True)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Generated by Django 2.2.2 on 2019-06-29 11:49
2+
3+
from django.db import migrations, models
4+
5+
APP_NAME = "heroes"
6+
MODEL_NAME = "heroapikey"
7+
DEPENDENCIES = [(APP_NAME, "0002_prefix_hashed_key")]
8+
9+
10+
class Migration(migrations.Migration):
11+
12+
dependencies = DEPENDENCIES
13+
14+
operations = [
15+
migrations.RemoveField(model_name=MODEL_NAME, name="id"),
16+
migrations.AddField(
17+
model_name=MODEL_NAME,
18+
name="id",
19+
field=models.AutoField(
20+
auto_created=True,
21+
primary_key=True,
22+
serialize=False,
23+
verbose_name="ID",
24+
),
25+
),
26+
]

0 commit comments

Comments
 (0)