user signup
This commit is contained in:
parent
7e3d84e2fc
commit
4681cef584
4
accounts/templates/accounts/login.html
Normal file
4
accounts/templates/accounts/login.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{% extends 'base.html' %}
|
||||||
|
{% block content %}
|
||||||
|
HI
|
||||||
|
{% endblock %}
|
4
accounts/templates/accounts/signout.html
Normal file
4
accounts/templates/accounts/signout.html
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{% extends 'base.html' %}
|
||||||
|
{% block content %}
|
||||||
|
HI
|
||||||
|
{% endblock %}
|
25
accounts/templates/accounts/signup.html
Normal file
25
accounts/templates/accounts/signup.html
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{% extends 'base.html' %}
|
||||||
|
{% block content %}
|
||||||
|
{% if error %}
|
||||||
|
{{ error }}
|
||||||
|
<br />
|
||||||
|
<br />
|
||||||
|
{% endif %}
|
||||||
|
<h1>Sign Up!</h1>
|
||||||
|
<form method="POST" action="{% url 'signup' %}">
|
||||||
|
{% csrf_token %}
|
||||||
|
Username:
|
||||||
|
<br/>
|
||||||
|
<input type="text" name="username"/>
|
||||||
|
<br/>
|
||||||
|
Password:
|
||||||
|
<br/>
|
||||||
|
<input type="password" name="password1"/>
|
||||||
|
<br/>
|
||||||
|
Confirm Password:
|
||||||
|
<br/>
|
||||||
|
<input type="password" name="password2"/>
|
||||||
|
<br/><br/>
|
||||||
|
<input type="submit" value="Sign Up!" class="btn btn-primary">
|
||||||
|
</form>
|
||||||
|
{% endblock %}
|
8
accounts/urls.py
Normal file
8
accounts/urls.py
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
from django.urls import path
|
||||||
|
from . import views
|
||||||
|
|
||||||
|
urlpatterns = [
|
||||||
|
path('signup', views.signup, name='signup'),
|
||||||
|
path('login', views.login, name='login'),
|
||||||
|
path('logout', views.logout, name='logout'),
|
||||||
|
]
|
@ -1,3 +1,27 @@
|
|||||||
from django.shortcuts import render
|
from django.shortcuts import render, redirect
|
||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.contrib import auth
|
||||||
|
|
||||||
# Create your views here.
|
|
||||||
|
def signup(request):
|
||||||
|
if request.method == 'POST':
|
||||||
|
if request.POST['password1'] == request.POST['password2']:
|
||||||
|
try:
|
||||||
|
User.objects.get(username=request.POST['username'])
|
||||||
|
return render(request, 'accounts/signup.html', {'error': 'username already signed up'})
|
||||||
|
except User.DoesNotExist:
|
||||||
|
user = User.objects.create_user(request.POST['username'], password=request.POST['password1'])
|
||||||
|
auth.login(request, user)
|
||||||
|
return redirect('home')
|
||||||
|
else:
|
||||||
|
return render(request, 'accounts/signup.html', {'error': 'passwords must match'})
|
||||||
|
else:
|
||||||
|
return render(request, 'accounts/signup.html')
|
||||||
|
|
||||||
|
|
||||||
|
def login(request):
|
||||||
|
return render(request, 'accounts/login.html')
|
||||||
|
|
||||||
|
|
||||||
|
def logout(request):
|
||||||
|
return render(request, '/accounts/login.html')
|
||||||
|
@ -17,13 +17,6 @@
|
|||||||
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
|
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
|
||||||
|
|
||||||
<!-- Favicons -->
|
<!-- Favicons -->
|
||||||
<link rel="apple-touch-icon" href="/docs/4.4/assets/img/favicons/apple-touch-icon.png" sizes="180x180">
|
|
||||||
<link rel="icon" href="/docs/4.4/assets/img/favicons/favicon-32x32.png" sizes="32x32" type="image/png">
|
|
||||||
<link rel="icon" href="/docs/4.4/assets/img/favicons/favicon-16x16.png" sizes="16x16" type="image/png">
|
|
||||||
<link rel="manifest" href="/docs/4.4/assets/img/favicons/manifest.json">
|
|
||||||
<link rel="mask-icon" href="/docs/4.4/assets/img/favicons/safari-pinned-tab.svg" color="#563d7c">
|
|
||||||
<link rel="icon" href="/docs/4.4/assets/img/favicons/favicon.ico">
|
|
||||||
<meta name="msapplication-config" content="/docs/4.4/assets/img/favicons/browserconfig.xml">
|
|
||||||
<meta name="theme-color" content="#563d7c">
|
<meta name="theme-color" content="#563d7c">
|
||||||
|
|
||||||
|
|
||||||
@ -56,7 +49,7 @@
|
|||||||
<span class="navbar-toggler-icon"></span>
|
<span class="navbar-toggler-icon"></span>
|
||||||
</button>
|
</button>
|
||||||
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
|
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
|
||||||
<div class="navbar-nav" ml-auto>
|
<div class="navbar-nav ml-auto">
|
||||||
<a class="nav-item nav-link" href="{% url 'home' %}">Sign Up</a>
|
<a class="nav-item nav-link" href="{% url 'home' %}">Sign Up</a>
|
||||||
<a class="nav-item nav-link" href="{% url 'home' %}">Login</a>
|
<a class="nav-item nav-link" href="{% url 'home' %}">Login</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -14,7 +14,7 @@ Including another URLconf
|
|||||||
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
|
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
|
||||||
"""
|
"""
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.urls import include, path
|
from django.urls import path, include
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.conf.urls.static import static
|
from django.conf.urls.static import static
|
||||||
from products import views
|
from products import views
|
||||||
@ -22,4 +22,5 @@ from products import views
|
|||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('admin/', admin.site.urls),
|
path('admin/', admin.site.urls),
|
||||||
path('', views.home, name='home'),
|
path('', views.home, name='home'),
|
||||||
|
path('accounts/', include('accounts.urls')),
|
||||||
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
||||||
|
@ -1,2 +1,3 @@
|
|||||||
|
django
|
||||||
psycopg2
|
psycopg2
|
||||||
pillow
|
pillow
|
Loading…
Reference in New Issue
Block a user