2 changed files with 63 additions and 1 deletions
@ -0,0 +1,34 @@ |
|||
# Generated by Django 2.0.3 on 2018-03-24 19:03 |
|||
|
|||
from django.db import migrations, models |
|||
import django.db.models.deletion |
|||
|
|||
|
|||
class Migration(migrations.Migration): |
|||
|
|||
initial = True |
|||
|
|||
dependencies = [ |
|||
] |
|||
|
|||
operations = [ |
|||
migrations.CreateModel( |
|||
name='Link', |
|||
fields=[ |
|||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
|||
('url', models.URLField(verbose_name='Lien')), |
|||
], |
|||
), |
|||
migrations.CreateModel( |
|||
name='Playlist', |
|||
fields=[ |
|||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
|||
('date', models.DateTimeField(verbose_name='date')), |
|||
], |
|||
), |
|||
migrations.AddField( |
|||
model_name='link', |
|||
name='playlist', |
|||
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='player.Playlist', verbose_name='Playlist'), |
|||
), |
|||
] |
|||
@ -1,3 +1,31 @@ |
|||
from django.db import models |
|||
|
|||
# Create your models here. |
|||
PK_LENGTH = 23 |
|||
|
|||
class Playlist(models.Model): |
|||
date = models.DateTimeField(verbose_name="date") |
|||
|
|||
@staticmethod |
|||
def reverse_token(token): |
|||
return token & ((1 << PK_LENGTH) - 1) |
|||
|
|||
def get_token(self): |
|||
return int(self.date.timestamp()) << PK_LENGTH | self.pk |
|||
|
|||
def get_absolute_url(self): |
|||
pass |
|||
|
|||
def __str__(self): |
|||
return "Playlist " + str(self.get_token()) |
|||
|
|||
|
|||
class Link(models.Model): |
|||
url = models.URLField(verbose_name="Lien") |
|||
playlist = models.ForeignKey( |
|||
Playlist, |
|||
on_delete=models.CASCADE, |
|||
verbose_name="Playlist", |
|||
) |
|||
|
|||
def __str__(self): |
|||
return "Link : " + self.url + " of " + str(self.playlist) |
|||
|
|||
Loading…
Reference in new issue