diff --git a/registrasi/__init__.py b/registrasi/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/registrasi/admin.py b/registrasi/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/registrasi/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/registrasi/apps.py b/registrasi/apps.py new file mode 100644 index 0000000..22e2d85 --- /dev/null +++ b/registrasi/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + + +class RegistrasiConfig(AppConfig): + name = 'registrasi' diff --git a/registrasi/forms.py b/registrasi/forms.py new file mode 100644 index 0000000..ae83297 --- /dev/null +++ b/registrasi/forms.py @@ -0,0 +1,16 @@ +from django import forms + + +class RegisForm(forms.Form): + namalengkap = forms.CharField(label='Nama Lengkap', max_length=100) + email = forms.EmailField(label='Email', max_length=100) + pilihantahun = range(1980, 2020) + tanggallahir = forms.DateField(label='Tanggal Lahir', widget=forms.SelectDateWidget(years=pilihantahun)) + jenis_kelamin = ( + ('p', 'pria'), + ('w', 'wanita'), + ) + jeniskelamin = forms.ChoiceField(widget=forms.RadioSelect, choices=jenis_kelamin) + alamat = forms.CharField(widget=forms.Textarea, required=False) + setuju = forms.BooleanField() + diff --git a/registrasi/migrations/__init__.py b/registrasi/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/registrasi/models.py b/registrasi/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/registrasi/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/registrasi/templates/registrasi/index.html b/registrasi/templates/registrasi/index.html new file mode 100644 index 0000000..a45fee3 --- /dev/null +++ b/registrasi/templates/registrasi/index.html @@ -0,0 +1,60 @@ + + + + + Form + + + {% if submitted %} +

+ data kamu berhasil dikirm +

+ +{% else %} +
+ {% csrf_token %} + {{ form.non_field_errors }} +
+ {{ form.namalengkap.errors }} + {{ form.namalengkap.label_tag }} + {{ form.namalengkap }} +
+ +
+ {{ form.email.errors }} + {{ form.email.label_tag }} + {{ form.email }} +
+ +
+ {{ form.tanggallahir.errors }} + {{ form.tanggallahir.label_tag }} + {{ form.tanggallahir }} +
+ +
+ {{ form.jeniskelamin.errors }} + {{ form.jeniskelamin.label_tag }} + {{ form.jeniskelamin }} +
+ +
+ {{ form.alamat.errors }} + {{ form.alamat.label_tag }} + {{ form.alamat }} +
+ +
+ {{ form.setuju.errors }} + {{ form.setuju.label_tag }} + {{ form.setuju }} +
+ + + +
+ {% endif %} + + + + \ No newline at end of file diff --git a/registrasi/tests.py b/registrasi/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/registrasi/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/registrasi/urls.py b/registrasi/urls.py new file mode 100644 index 0000000..3ef24d9 --- /dev/null +++ b/registrasi/urls.py @@ -0,0 +1,7 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path('', views.index, name='index'), +] \ No newline at end of file diff --git a/registrasi/views.py b/registrasi/views.py new file mode 100644 index 0000000..973706a --- /dev/null +++ b/registrasi/views.py @@ -0,0 +1,17 @@ +from django.shortcuts import render +from django.http import HttpResponseRedirect +from .forms import RegisForm + + +# Create your views here. +def index(request): + submitted = False + if request.method == 'POST': + form = RegisForm(request.POST) + if form.is_valid(): + return HttpResponseRedirect('/registrasi?submitted=True') + else: + form = RegisForm() + if 'submitted' in request.GET: + submitted = True + return render(request, 'registrasi/index.html', {'form': form, 'submitted': submitted})