Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 74

Как изменить одно строчное текстовое поле в модели

21.03.2019, 17:47. Показов 3269. Ответов 7
Метки go (Все метки)

Студворк — интернет-сервис помощи студентам
Изучать django начал недавно и появились затруднение. Во 1 почему когда только зашел на страницу появляется разу This field is required. хотя я не успел нажать кнопку отправить. Во 2 как увеличить формы ввода? Как я прочитал нужно использовать виджет для формы но я же создал модель и в тупике. Помогите

/////////////////////////models.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from django.db import models
 
class Personalcard(models.Model):
    photo =  models.ImageField(upload_to='mainApp/static/images/%Y/%m/%d', verbose_name='Фото' )
    email = models.EmailField(verbose_name='email')
    name = models.CharField(max_length=50, verbose_name='Имя')
    surname = models.CharField(max_length=50, verbose_name='Фамилия')
    patronymic = models.CharField(max_length=50, verbose_name='Отчество')
    specialty = models.CharField(max_length=50, verbose_name='Специальность')
    floor = models.CharField(max_length=50, verbose_name='Пол')
    dob = models.DateField(verbose_name='Дата рождения')
    nationality = models.CharField(max_length=50, verbose_name='Национальность')
    bpl = models.CharField(max_length=50, verbose_name='Место рождения')
    education = models.CharField(max_length=150, verbose_name='Образование')
    job = models.CharField(max_length=150, verbose_name='Вып-ая работа до поступления')
    marital_status = models.CharField(max_length=50, verbose_name='Семейное положение')
    father = models.CharField(max_length=150, verbose_name='Сведенье об отце')
    mother = models.CharField(max_length=150, verbose_name='Сведенье об матери')
    address = models.CharField(max_length=150, verbose_name='Домашний адрес')
    the_address_of_this = models.CharField(max_length=150, verbose_name='Прописка в н время')
    number = models.BigIntegerField(verbose_name='Номер телефона')
    password = models.CharField(max_length=50 ,verbose_name='Пароль')
 
    def __str__(self):
        return "%s %s %s" %(self.name, self.surname, self.patronymic)
//////////////////////////////////// forms.py
Python
1
2
3
4
5
6
7
8
from django import forms
from .models import *
 
class PersonalcardForm(forms.ModelForm):
 
    class Meta:
        model = Personalcard
        exclude = [""]
/////////////////////////html
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
{% extends "mainApp/wrapper.html" %}
 
 
{% block content %}
<div class="container body-content">
<div class=vniz>
<h1>Регистрация</h1>
<hr>
<p class="lead">Заполните все поля</p>
<div>
  <form action="" method="post" enctype="multipart/form-data">
 
    {% csrf_token %}
    {{form.as_p}}
<button type="submit" class="btn btn-primary btn-large">Отправить »</button >
</div>
 
</div>
</div>
 
 
 
{% endblock %}
Миниатюры
Как изменить одно строчное текстовое поле в модели  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.03.2019, 17:47
Ответы с готовыми решениями:

Как выровнять только одно текстовое поле?
Как выровнять это поле? Сайт: http://ifb79318.bget.ru/ Спасибо.

Как сохранить только одно поле из модели (description ) ?
Хочу сохранить только поле $ctask-&gt;description ,а оно сохраняет всю модель $ctask-&gt;save(); ...

WPF Как изменить введенный символ при нажатии на текстовое поле?
У меня есть код от WinForms, который при нажатии клавиши на текстовое поле проверяет, какой символ введен, и если это точка, то она...

7
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
21.03.2019, 18:00
а вьюха где?
1
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 74
21.03.2019, 18:09  [ТС]
Забыл сори
////////////////////////views.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from django.shortcuts import render
from .forms import PersonalcardForm
 
def index(request):
    return render(request, 'mainApp/homePage.html')
 
def login(request):
    return render(request, 'mainApp/login.html')
 
def registration(request):
    form = PersonalcardForm(request. POST or None, request.FILES)
 
    if form.is_valid():
        form.save()
 
    return render(request, 'mainApp/registration.html', locals())
Добавлено через 7 минут
И снова ты помогаешь ))))
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
21.03.2019, 18:17
Цитата Сообщение от _ZombiE_ Посмотреть сообщение
почему когда только зашел на страницу появляется разу This field is required. хотя я не успел нажать кнопку отправить.
возможно, потому что ты форму не закрыл в шаблоне.
закрывается она после сабмита.
Цитата Сообщение от _ZombiE_ Посмотреть сообщение
как увеличить формы ввода? Как я прочитал нужно использовать виджет для формы но я же создал модель и в тупике.
через виджеты в форме вообще. может, как-то и через хтмл можно...
и exclude писать не надо в этом случае.
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
22.03.2019, 04:45
Лучший ответ Сообщение было отмечено _ZombiE_ как решение

Решение

Цитата Сообщение от _ZombiE_ Посмотреть сообщение
def registration(request): form = PersonalcardForm(request. POST or None, request.FILES) if form.is_valid(): form.save()
Ошибки появляются, потому что ты пустую форму валидируешь. Так правильно:
Python
1
2
3
4
if request.method == "POST":
    [...]
else:
    form = PostForm()
https://tutorial.djangogirls.org/ru/django_forms/

Цитата Сообщение от _ZombiE_ Посмотреть сообщение
Во 2 как увеличить формы ввода?
Python
1
2
3
4
class Meta:
        model = Personalcard
        exclude = [""]
        widgets = {'name': forms.Textarea(attrs={'key': 'val'})}
Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
как-то и через хтмл можно...
Не надо.

Цитата Сообщение от m0nte-cr1st0 Посмотреть сообщение
exclude писать не надо в этом случае.
Надо, с некоторой версии джанго требует или exclude, или перечислить поля.
2
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 74
22.03.2019, 14:19  [ТС]
Цитата Сообщение от Рыжий Лис Посмотреть сообщение
if request.method == "POST":
* * [...]
else:
* * form = PostForm()
Спасибо помогло



Цитата Сообщение от Рыжий Лис Посмотреть сообщение
class Meta:
* * * * model = Personalcard
* * * * exclude = [""]
* * * * widgets = {'name': forms.Textarea(attrs={'key': 'val'})}
А если я хочу увеличить несколько форм сразу ? При копировании этой строки несколько раз увеличиваться лишь последняя форма

Python
1
2
3
4
5
widgets = {'job': forms.Textarea(attrs={'key': 'val'})}
        widgets = {'father': forms.Textarea(attrs={'key': 'val'})}
        widgets = {'mother': forms.Textarea(attrs={'key': 'val'})}
        widgets = {'address': forms.Textarea(attrs={'key': 'val'})}
        widgets = {'the_address_of_this': forms.Textarea(attrs={'key': 'val'})}
0
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
22.03.2019, 14:33
Цитата Сообщение от _ZombiE_ Посмотреть сообщение
А если я хочу увеличить несколько форм сразу ?
Несколько полей, скорее.
Не знаю, поможет ли Вам это. Но вот пример.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class ProfileEditMainForm(forms.ModelForm):
    class Meta:
        model = User
        fields = (
            'first_name', 'last_name', 'sex', 'family_status', 'birthday',
            'hometown', 'languages'
        )
        widgets = {
            'sex': forms.Select(
                attrs={
                    'class': 'select2',
                    'style': 'width: 246px;'
                }
            ),
            'family_status': forms.Select(
                attrs={
                    'class': 'select2',
                    'style': 'width: 246px;'
                }
            ),
            'languages': forms.SelectMultiple(
                attrs={
                    'style': 'width: 246px;',
                    'class': 'select2'
                }
            ),
            'birthday': forms.SelectDateWidget(
                empty_label=(_('Year'), _('Month'), _('Day'))
            )
        }
Просто можешь под свой пример переделать.
1
1 / 1 / 0
Регистрация: 27.09.2016
Сообщений: 74
22.03.2019, 14:42  [ТС]
Сработало )))))))))))) спасибо .
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.03.2019, 14:42
Помогаю со студенческими работами здесь

Создать html-страницу, на которой находится одно текстовое поле
Создать html-страницу, на которой находится одно текстовое поле. Написать скрипт, который выполняется при загрузке документа и делает...

Ввести строку в текстовое поле. Вывести индекс первого вхождения подстроки, введенной во второе текстовое поле.
Помогите пожалуйста с заданием Нужно: Ввести строку в текстовое поле. Вывести в поле “Результат” индекс первого вхождения подстроки,...

Создать скрипт, где пользователь задаёт две даты вида ДД.ММ.ГГГГ в одно текстовое поле, разделённые точкой с запятой
Необходимо создать создать скрипт, где пользователь задаёт две даты вида ДД.ММ.ГГГГ в одно текстовое поле, разделённые точкой с запятой, а...

Создать кнопку и текстовое поле. При нажатии на кнопку ввести в текстовое поле текущее время
Создать кнопку и текстовое поле. При нажатии на кнопку ввести в текстовое поле текущее время .

Как в форме в Access в текстовое поле вводить данные, отображающиеся в этом поле звездочками?
Люди добрые может кто знает, а то я заработался. Как в форме в Access в текстовое поле вводить данные, отображающиеся в этом поле...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru