신은섭(Shin Eun Seop)

add login, logout, signup, delete account, file listing, file upload(partial)

closed kairos03/2018-1-d.cloud#4
closed kairos03/2018-1-d.cloud#5
closed kairos03/2018-1-d.cloud#6
closed kairos03/2018-1-d.cloud#7
closed kairos03/2018-1-d.cloud#10
kairos03/2018-1-d.cloud#8
...@@ -4,9 +4,11 @@ from django.contrib.auth import views ...@@ -4,9 +4,11 @@ from django.contrib.auth import views
4 4
5 urlpatterns = [ 5 urlpatterns = [
6 url(r'^admin/', admin.site.urls), 6 url(r'^admin/', admin.site.urls),
7 - url(r'^accounts/login/$', views.login, name='login'),
8 - url(r'^accounts/logout/$', views.logout, name='logout', kwargs={'next_page': '/'}),
9 url(r'^restapi/', include('restful.urls')), 7 url(r'^restapi/', include('restful.urls')),
10 url(r'^', include('website.urls')), 8 url(r'^', include('website.urls')),
9 +
10 + url(r'^accounts/login/$', views.login, name='login'),
11 + url(r'^accounts/logout/$', views.logout, name='logout', kwargs={'next_page': '/'}),
12 +
11 ] 13 ]
12 14
......
1 from django.contrib import admin 1 from django.contrib import admin
2 -from website.models import Post 2 +# from website.models import Post
3 3
4 -admin.site.register(Post)
...\ No newline at end of file ...\ No newline at end of file
4 +# admin.site.register(Post)
...\ No newline at end of file ...\ No newline at end of file
......
1 -from django.contrib.auth import login, authenticate 1 +from django.contrib.auth import login, authenticate, logout
2 from django.contrib.auth.forms import UserCreationForm 2 from django.contrib.auth.forms import UserCreationForm
3 from django.shortcuts import render, redirect 3 from django.shortcuts import render, redirect
4 from django.contrib.auth.decorators import login_required 4 from django.contrib.auth.decorators import login_required
...@@ -32,5 +32,6 @@ def delete_account(request): ...@@ -32,5 +32,6 @@ def delete_account(request):
32 def delete_account_success(request): 32 def delete_account_success(request):
33 if request.method == 'GET': 33 if request.method == 'GET':
34 # TODO Add delete account 34 # TODO Add delete account
35 + logout(request)
35 return render(request, 'registration/delete_account_success.html') 36 return render(request, 'registration/delete_account_success.html')
36 37
......
1 from django import forms 1 from django import forms
2 -from website.models import Post
3 2
4 -class PostForm(forms.ModelForm):
5 - class Meta:
6 - model = Post
7 - fields = ('title', 'text')
...\ No newline at end of file ...\ No newline at end of file
3 +# class PostForm(forms.ModelForm):
4 +# class Meta:
5 +# model = Post
6 +# fields = ('title', 'text')
...\ No newline at end of file ...\ No newline at end of file
......
1 -{% load staticfiles %}
2 -<html>
3 - <head>
4 - <title>Django Girls blog</title>
5 - <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
6 - <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
7 - <link href="//fonts.googleapis.com/css?family=Lobster&subset=latin,latin-ext" rel="stylesheet" type="text/css">
8 - <link rel="stylesheet" href="{% static 'css/posts.css' %}">
9 - </head>
10 - <body>
11 - <div class="page-header">
12 - {% if user.is_authenticated %}
13 - <a href="{% url 'post_new' %}" class="top-menu"><span class="glyphicon glyphicon-plus"></span></a>
14 - <a href="{% url 'post_draft_list' %}" class="top-menu"><span class="glyphicon glyphicon-edit"></span></a>
15 - <p class="top-menu">Hello {{ user.username }} <small>(<a href="{% url 'logout' %}">Log out</a>)</small></p>
16 - {% else %}
17 - <a href="{% url 'login' %}" class="top-menu"><span class="glyphicon glyphicon-lock"></span></a>
18 - {% endif %}
19 - <h1><a href="/">Django Girls Blog</a></h1>
20 - </div>
21 - <div class="content container">
22 - <div class="row">
23 - <div class="col-md-8">
24 - {% block content %}
25 - {% endblock %}
26 - </div>
27 - </div>
28 - </div>
29 - </body>
30 -</html>
...\ No newline at end of file ...\ No newline at end of file
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 {% if user.is_authenticated %} 7 {% if user.is_authenticated %}
8 <p class="top-menu">Hello {{ user.username }} <small>(<a href="{% url 'logout' %}">Log out</a>)</small></p> 8 <p class="top-menu">Hello {{ user.username }} <small>(<a href="{% url 'logout' %}">Log out</a>)</small></p>
9 {% else %} 9 {% else %}
10 - <a href="{% url 'login' %}" class="top-menu"><span class="glyphicon glyphicon-lock"></span></a> 10 + <a href="{% url 'login' %}" class="top-menu">Log in<span class="glyphicon glyphicon-lock"></span></a>
11 {% endif %} 11 {% endif %}
12 <h1><a href="/">D.cloud</a></h1> 12 <h1><a href="/">D.cloud</a></h1>
13 </div> 13 </div>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 2
3 {% block content %} 3 {% block content %}
4 {% for file in files %} 4 {% for file in files %}
5 - <h1>{{file.title}}</h1> 5 + <h1>{{file.name}}</h1>
6 - <p>{{file.object_key}}</p> 6 + <p>{{file.type}}</p>
7 {% endfor %} 7 {% endfor %}
8 {% endblock %} 8 {% endblock %}
...\ No newline at end of file ...\ No newline at end of file
......
1 +{% extends 'website/baseline.html' %}
2 +
3 +{% block content %}
4 + <h1> Hello </h1>
5 +{% endblock %}
...\ No newline at end of file ...\ No newline at end of file
1 -{% extends 'website/base.html' %}
2 -
3 -{% block content %}
4 -
5 - <div class="post">
6 - {% if post.published_date %}
7 - <div class="date">
8 - {{ post.published_date }}
9 - </div>
10 - {% else %}
11 - <a class="btn btn-default" href="{% url 'post_publish' pk=post.pk %}">Publish</a>
12 - {% endif %}
13 - {% if user.is_authenticated %}
14 - <a class="btn btn-default" href="{% url 'post_edit' pk=post.pk %}"><span class="glyphicon glyphicon-pencil"></span></a>
15 - {% endif %}
16 - <h1>{{ post.title }}</h1>
17 - <p>{{ post.text|linebreaksbr }}</p>
18 - </div>
19 -{% endblock %}
...\ No newline at end of file ...\ No newline at end of file
1 -{% extends 'website/base.html' %}
2 -
3 -{% block content %}
4 - {% for post in posts %}
5 - <div class="post">
6 - <p class="date">created: {{ post.created_date|date:'d-m-Y' }}</p>
7 - <h1><a href="{% url 'post_detail' pk=post.pk %}">{{ post.title }}</a></h1>
8 - <p>{{ post.text|truncatechars:200 }}</p>
9 - </div>
10 - {% endfor %}
11 -{% endblock %}
...\ No newline at end of file ...\ No newline at end of file
1 -{% extends 'website/base.html' %}
2 -
3 -{% block content %}
4 - <h1>New post</h1>
5 - <form method="POST" class="post-form">{% csrf_token %}
6 - {{ form.as_p }}
7 - <button type="submit" class="save btn btn-default">Save</button>
8 - </form>
9 -{% endblock %}
...\ No newline at end of file ...\ No newline at end of file
1 -{% extends 'website/base.html' %}
2 -
3 -{% block content %}
4 - {% for post in posts %}
5 - <div class="post">
6 - <div class="date">
7 - <p>published: {{ post.published_date }}</p>
8 - </div>
9 - <h1>
10 - <h1><a href="{% url 'post_detail' pk=post.pk %}">{{ post.title }}</a></h1>
11 - </h1>
12 - <p>{{ post.text|linebreaksbr }}</p>
13 - </div>
14 - {% endfor %}
15 -{% endblock %}
...\ No newline at end of file ...\ No newline at end of file
1 from django.conf.urls import url 1 from django.conf.urls import url
2 -from website import views, auth_views
3 from django.shortcuts import redirect 2 from django.shortcuts import redirect
3 +from website import views, auth_views
4 4
5 urlpatterns = [ 5 urlpatterns = [
6 - # blog 6 +
7 - url(r'^$', redirect('login')),
8 - url(r'^files/', views.file_list, name='file_list'),
9 url(r'^accounts/signup/$', auth_views.signup, name='signup'), 7 url(r'^accounts/signup/$', auth_views.signup, name='signup'),
10 url(r'^accounts/delete_account/$', auth_views.delete_account, name='delete_account'), 8 url(r'^accounts/delete_account/$', auth_views.delete_account, name='delete_account'),
11 url(r'^accounts/delete_account_success/$', auth_views.delete_account_success, name='delete_account_success'), 9 url(r'^accounts/delete_account_success/$', auth_views.delete_account_success, name='delete_account_success'),
10 +
11 + # blog
12 + url(r'^$', views.home),
13 + url(r'^files/', views.file_list, name='file_list'),
12 ] 14 ]
...\ No newline at end of file ...\ No newline at end of file
......
1 -from django.shortcuts import render, get_object_or_404, redirect 1 +from django.shortcuts import render, get_object_or_404, redirect, Http404
2 from django.utils import timezone 2 from django.utils import timezone
3 from django.contrib.auth.decorators import login_required 3 from django.contrib.auth.decorators import login_required
4 -from website.models import Post
5 from restful.models import File 4 from restful.models import File
6 -from website.forms import PostForm 5 +import requests
6 +
7 +
8 +def home(request):
9 + return render(request, 'website/home.html')
10 +
7 11
8 @login_required 12 @login_required
9 def file_list(request): 13 def file_list(request):
10 - files = File.objects.all() 14 + files = requests.get('http://localhost:8000/restapi/files')
11 - return render(request, 'website/file_list.html', {'files': files}) 15 + files = files.json()
16 + return render(request, 'website/file_list.html', files)
......