Пытаясь вызвать функцию установки, когда мы нажимаем кнопку отправки на HTML-странице и берём данные только из HTML, я новичок в django. Помоги мне..!
Файл просмотров:
from .forms import Details
from django import forms
from django.shortcuts import render
from django.http import HttpResponseRedirect
from . import installation
def output(request):
if request.method == 'POST':
details=Details(request.POST)
if details.is_valid():
Obj=details.cleaned_data
path=Obj['Path']
device_type=Obj['Device']
image_version=Obj['Version']
return installation()
else:
raise TypeError
Файл приложения / urls.py:
from django.conf.urls import url
from django.contrib import admin
from . import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'',views.output,{'template_name':'home_page.html'}),
]
Файл Forms.py:
from django import forms
class Details(forms.Form):
Device=forms.CharField(required=True, label='Device_Type', max_length=32)
Path=forms.FileField(required=True, label='Path_to_install_build')
Version=forms.CharField(required=True, label='Version_type',max_length=32)
Привет, Виллем! <Form method = "POST"> {% csrf_token%} {{form.as_p}} <button type = "submit"> Отправить </button> </form>






Где твой HTML? если ваш интерфейс (HTML) не достигает вашего бэкэнда в ваших представлениях, вероятно, ваше действие неправильное, поэтому проверьте, правильное ли действие у вашей формы
<form action = "/" method = "POST">
{% csrf_token %}
<!-- Rest of the HTML code to your form -->
<input type = "submit">Submit</input>
</form>
Я устанавливаю ваше действие на /, потому что вы используете корневой путь к своим представлениям, если вы измените его на детали, действие должно быть /detail/
Кстати, вы можете использовать встроенную форму от django
{% csrf_token %}
{{ form.as_p }}
<input type = "submit">Submit</input>
хорошо, пожалуйста, замаскируйте под ответ; D
Где логика щелчок?