📜  RichTextField – Django 模型

📅  最后修改于: 2022-05-13 01:55:24.465000             🧑  作者: Mango

RichTextField – Django 模型

RichTextField通常用于存储可以存储任何类型数据的段落。富文本是使用常见格式选项设置格式的文本,例如粗体、斜体、图像、纯文本无法使用的 URL。

句法:

field_name=RichTextField()

Django 模型 RichTextField 解释

RichTextField 使用示例的插图。考虑一个名为 geeksforgeeks 的项目,它有一个名为 geeks 的应用程序。

现在通过在终端或命令提示符中输入以下命令来安装 django-ckeditor 包。

pip install django-ckeditor

转到 settings.py 并将 ckeditor 和 geeks 应用程序添加到 INSTALLED_APPS

Python3
# Application definition
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'ckeditor',
    'geeks',
]


Python3
from django.db import models
from django.db.models import Model
from ckeditor.fields import RichTextField
 
 
# Create your models here.
class GeeksModel(Model):
    geeks_field = RichTextField()


Python3
# Generated by Django 3.2.3 on 2021-05-13 09:40
 
import ckeditor.fields
from django.db import migrations, models
 
 
class Migration(migrations.Migration):
 
    initial = True
 
    dependencies = [
    ]
 
    operations = [
        migrations.CreateModel(
            name='GeeksModel',
            fields=[
                ('id', models.BigAutoField(
                  auto_created=True, primary_key=True,
                  serialize=False, verbose_name='ID')),
               
                ('geeks_field', ckeditor.fields.RichTextField()),
            ],
        ),
    ]


Python3
from django.contrib import admin
from .models import GeeksModel
 
 
# Register your models here.
admin.site.register(GeeksModel)


在 geeks 应用程序的 models.py 文件中输入以下代码。

蟒蛇3



from django.db import models
from django.db.models import Model
from ckeditor.fields import RichTextField
 
 
# Create your models here.
class GeeksModel(Model):
    geeks_field = RichTextField()

现在,当我们从终端运行 makemigrations 命令时,

python manage.py makemigrations

将在 geeks 目录中创建一个名为 migrations 的新文件夹,其中包含一个名为 0001_initial.py 的文件

蟒蛇3

# Generated by Django 3.2.3 on 2021-05-13 09:40
 
import ckeditor.fields
from django.db import migrations, models
 
 
class Migration(migrations.Migration):
 
    initial = True
 
    dependencies = [
    ]
 
    operations = [
        migrations.CreateModel(
            name='GeeksModel',
            fields=[
                ('id', models.BigAutoField(
                  auto_created=True, primary_key=True,
                  serialize=False, verbose_name='ID')),
               
                ('geeks_field', ckeditor.fields.RichTextField()),
            ],
        ),
    ]

现在跑,

python manage.py migrate

因此,当您在项目上运行迁移时,会创建一个 geeks_field RichTextField。它是一个存储大数据的字段。转到 admin.py 并注册您的模型。

蟒蛇3

from django.contrib import admin
from .models import GeeksModel
 
 
# Register your models here.
admin.site.register(GeeksModel)

如何使用 RichTextField ?

RichTextField 用于在数据库中存储不同类型(图像、URL、粗体文本等)的大数据。现在让我们在管理服务器中检查它。每当我们单击 Add Geeks Model 时,我们都可以看到 RichTextField