Skip to content

Instantly share code, notes, and snippets.

@ahmedlahrizi
Created July 8, 2021 11:13
Show Gist options
  • Save ahmedlahrizi/f0631d411f942c4b790e7726cac3adfa to your computer and use it in GitHub Desktop.
Save ahmedlahrizi/f0631d411f942c4b790e7726cac3adfa to your computer and use it in GitHub Desktop.
random data from faker for django model
#from django.db import models
#from django.contrib.auth.models import User
#class Category(models.Model):
# name = models.CharField(max_length=36)
#class BlogPost(models.Model):
# title = models.CharField(max_length=50)
# text = models.TextField(max_length=500)
# author = models.ForeignKey(User, on_delete=models.SET("Utilisateur Supprimé"), default=None, null=True)
# category = models.ManyToManyField(Category)
from blog.models import BlogPost, Category
from django.contrib.auth.models import User
import random
from faker import Faker
fr_data = Faker('fr_FR')
for _ in range(25):
Category.objects.create(name=fr_data.word())
for _ in range(30):
is_staff = fr_data.boolean(chance_of_getting_true=50)
is_superuser = fr_data.boolean(chance_of_getting_true=20)
User.objects.create(username=fr_data.simple_profile()['username'],
is_staff=is_staff,
is_superuser=is_superuser,
first_name=fr_data.first_name(),
last_name=fr_data.last_name())
for i in range(50):
a = BlogPost.objects.create(title=fr_data.word(),
text=fr_data.text(max_nb_chars=200),
author=random.choice(User.objects.all()))
a.category.set(random.choices(Category.objects.all(), k=random.randint(0, 3)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment