Как отключить поле в хрустящей форме в ДжангоPython

Программы на Python
Ответить
Anonymous
 Как отключить поле в хрустящей форме в Джанго

Сообщение Anonymous »

Я использую четкую форму, чтобы позволить пользователю создавать новое сообщение о проблеме, но я хочу, чтобы пользователь не менял поле «проект», чтобы проблемы можно было помещать в правильный проект. Я использовал form.fields['project'].widget.attrs['readonly'] = True , но этот имеет только эффект отключения стиля, а не функционально.

Изображение


models.py

def new_issue(request, project_id):
if request.method == 'POST':
form = IssueForm(request.POST)
if form.is_valid():
issue = form.save(commit=False)
issue.author = request.user
issue.save()
return redirect('project:issue_tracker:issue_detail',project_id=project_id,issue_id=issue.id)
else:
form = IssueForm(initial={'project': project_id})
form.fields['project'].widget.attrs['readonly'] = True
template = 'issue_tracker/issue/new_issue.html'
context = {'form': form,'project_id':project_id}
return render(request, template, context)


form.py

class CommentForm(forms.ModelForm):
class Meta:
model = Comment
fields = ('body',)

class IssueForm(forms.ModelForm):
class Meta:
model = Issue
fields = ('title','content','project','status')

class NewIssueForm(forms.ModelForm):
class Meta:
model = Issue
fields = ('title','content','project','status')


new_issue.html

{% extends 'base.html' %}
{% load crispy_forms_tags %}

{% block content %}
Add New Issue
{% csrf_token %}
{{form|crispy}}
Submit


{% endblock %}


Подробнее здесь: https://stackoverflow.com/questions/509 ... orm-django
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»