Как я могу настроить перенос большой длинной строки текста в форму Django?

У меня есть форма с OneToOneField, в которую загружаются данные из другой табличной модели. Но у меня там часто большие размеры данных, и отображаемый текст не вписывается в размер окна. Можно ли как-то настроить перенос текста на 2-3 строки?

Как я могу настроить перенос большой длинной строки текста в форму?

enter image description here

from django.db import models

# Create your models here.


class ArkiObject (models.Model):
    nameobject = models.TextField(verbose_name="Наименование объекта")
    def __str__(self):
        return self.nameobject

TYPE_OBJECT = [
    ("1", "Котельная"),
    ("2", "Сети"),
    ("3", "БМК"),
    ("4", "ЦТП"),
    ("5", "ТГУ"),
]

TYPE_WORK = [
    ("1", "Реконструкция"),
    ("2", "Капитальный ремонт"),
    ("3", "Строительство"),
]

TYPE_CITY = [
    ("1", "Бронницы"),
    ("2", "Луховицы"),
    ("3", "Павловский Посад"),
    ("4", "Раменское"),
    ("5", "Шатура"),
]

class ArkiOneObject (models.Model):
    city = models.CharField(
        choices=TYPE_CITY,
    verbose_name="Выберите ОМСУ")
    typeobject = models.CharField(
        choices=TYPE_OBJECT,
    verbose_name="Выберите тип объекта")
    typework = models.CharField(
        choices=TYPE_WORK,
    verbose_name="Выберите тип работ")
    nameobject = models.OneToOneField(ArkiObject, verbose_name="Наименование объекта", on_delete=models.CASCADE)


from django import forms
from .models import *


class FormOne (forms.ModelForm):
    class Meta:
        model = ArkiOneObject
        fields = "__all__"



class FormTwo (forms.ModelForm):
    class Meta:
        model = ArkiTwoObject
        fields = "__all__"
                

class FormThree (forms.ModelForm):
    class Meta:
        model = ArkiObject
        fields = "__all__"
                                


<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <title>title</title>
</head>
<body>
    <div>
        <form method="POST" class="post-form">
            {% csrf_token %} {{formtwo.as_p}}
            <button type="submit" class="button">Отправить</button>
        </form>
    </div>
    
</body>
</html>


def formone(request):
    context = {}
    formone = FormOne(request.POST or None)
    if formone.is_valid():
        formone.save()

        return redirect("formone")
    context['formone'] = formone
    return render(request, "formone.html", context)


def formtwo(request):
    context = {}
    formtwo = FormTwo(request.POST or None)
    if formtwo.is_valid():
        formtwo.save()

        return redirect("formtwo")
    context['formtwo'] = formtwo
    return render(request, "formtwo.html", context)   

К сожалению, стандартные HTML—элементы <select> и <option> не поддерживают перенос текста по своей конструкции - они ограничены в плане форматирования. Если текст длинный, он либо переполняется, либо обрезается, либо требует горизонтальной прокрутки (в зависимости от браузера).
Используйте Select2
Библиотеки, подобные Select2, заменяют обычное поле выбора стилизуемым виджетом, который поддерживает многострочный текст, поиск и улучшенный пользовательский интерфейс.
Используйте всплывающие подсказки с многоточием (без обводки)

Вернуться на верх