from django.conf import settings from django.db import models class ShortUrl(models.Model): code = models.CharField(max_length=10, unique=True, db_index=True, verbose_name='短码') original_url = models.URLField(max_length=2000, verbose_name='原始URL') custom_code = models.CharField(max_length=20, null=True, blank=True, verbose_name='自定义短码') creator = models.ForeignKey( settings.AUTH_USER_MODEL, null=True, blank=True, on_delete=models.SET_NULL, related_name='short_urls', verbose_name='创建者', ) created_at = models.DateTimeField(auto_now_add=True, verbose_name='创建时间') expire_at = models.DateTimeField(null=True, blank=True, verbose_name='过期时间') click_count = models.IntegerField(default=0, verbose_name='点击次数') class Meta: verbose_name = '短链接' verbose_name_plural = '短链接' ordering = ['-created_at']