Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Isi database Django

Untuk menyelesaikannya dengan cara yang baik, Anda memerlukan kombinasi Factory Boy , Penipu dan perintah pengelolaan khusus .

Factory Boy memungkinkan Anda membuat template untuk menghasilkan objek yang valid dan Faker menghasilkan data palsu.

Saat Anda menginstal Factory Boy, pip install factory_boy , Anda juga mendapatkan Faker.

Diketahui,

from django.db import models


class User(models.Model):
    name = models.CharField(max_length=64)
    address = models.CharField(max_length=128)
    phone_number = models.CharField(max_length=32)

Anda dapat mendefinisikan Pabrik sebagai berikut:

import factory  
import factory.django

class UserFactory(factory.django.DjangoModelFactory):  
    class Meta:
        model = User

    name = factory.Faker('name')
    address = factory.Faker('address')
    phone_number = factory.Faker('phone_number')

Kemudian, Anda dapat membuat pengguna palsu dengan memanggil UserFactory.create() .

Salah satu cara untuk mendapatkan 200 pengguna palsu Anda adalah dengan masuk ke shell, python manage.py shell , dan lakukan:

 >>> # import UserFactory here
 >>> for _ in range(200):
 ...     UserFactory.create()

Cara lain, yang dapat memberi Anda lebih banyak fleksibilitas, adalah dengan membuat perintah pengelolaan khusus.

Misalnya, buat seed.py (ini akan menjadi nama perintah manajemen) di direktori <yourapp>/management/commands (agar ditemukan oleh Django) dengan yang berikut:

# <yourapp>/management/commands/seed.py
from django.core.management.base import BaseCommand

# import UserFactory here


class Command(BaseCommand):
    help = 'Seeds the database.'

    def add_arguments(self, parser):
        parser.add_argument('--users',
            default=200,
            type=int,
            help='The number of fake users to create.')

    def handle(self, *args, **options):
        for _ in range(options['users']):
            UserFactory.create()

Dan, Anda akan menjalankannya melalui baris perintah dengan python manage.py seed atau python manage.py seed --users 50 misalnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Mengelola MySQL - untuk Oracle DBA

  2. Cara Memigrasikan MySQL dari Amazon EC2 ke Pusat Data Lokal Anda Tanpa Waktu Henti

  3. Query Parameterized untuk MySQL dengan C#

  4. WebApp (Tomcat-jdbc) Koneksi DB yang dikumpulkan melemparkan pengecualian pengabaian

  5. Apa cara paling sederhana untuk menyimpan data dari program java ke MySQL?