Get creation of a text file working
[txt.house] / txt_house / models.py
diff --git a/txt_house/models.py b/txt_house/models.py
new file mode 100644 (file)
index 0000000..2f57ca0
--- /dev/null
@@ -0,0 +1,19 @@
+import base64
+import math
+
+from django.contrib import admin
+from django.db import models
+from django.urls import reverse
+
+class TextFile(models.Model):
+    text = models.TextField()
+    edit_key = models.CharField(max_length=43)
+
+    def get_absolute_url(self):
+        pk = base64.urlsafe_b64encode(
+            self.pk.to_bytes(math.ceil(self.pk.bit_length() / 8), 'big'),
+        ).decode('utf-8')
+
+        return reverse('text-file', kwargs={ 'pk': pk })
+
+admin.site.register(TextFile)