├── blog ├── __init__.py ├── __pycache__ │ ├── __init__.cpython-310.pyc │ ├── admin.cpython-310.pyc │ ├── apps.cpython-310.pyc │ ├── models.cpython-310.pyc │ ├── urls.cpython-310.pyc │ └── views.cpython-310.pyc ├── admin.py ├── apps.py ├── migrations │ ├── 0001_initial.py │ ├── 0002_contact.py │ ├── __init__.py │ └── __pycache__ │ │ ├── 0001_initial.cpython-310.pyc │ │ ├── 0002_contact.cpython-310.pyc │ │ └── __init__.cpython-310.pyc ├── models.py ├── tests.py ├── urls.py └── views.py ├── db.sqlite3 ├── manage.py ├── myBlog ├── __init__.py ├── __pycache__ │ ├── __init__.cpython-310.pyc │ ├── settings.cpython-310.pyc │ ├── urls.cpython-310.pyc │ └── wsgi.cpython-310.pyc ├── asgi.py ├── settings.py ├── urls.py └── wsgi.py ├── static └── img │ ├── Logo.ico │ ├── slider1.webp │ ├── slider2.jpg │ └── slider3.jpg └── templates ├── About.html ├── base.html ├── blog.html ├── blogpost.html ├── contact.html ├── index.html └── search.html /blog/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__init__.py -------------------------------------------------------------------------------- /blog/__pycache__/__init__.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/__init__.cpython-310.pyc -------------------------------------------------------------------------------- /blog/__pycache__/admin.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/admin.cpython-310.pyc -------------------------------------------------------------------------------- /blog/__pycache__/apps.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/apps.cpython-310.pyc -------------------------------------------------------------------------------- /blog/__pycache__/models.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/models.cpython-310.pyc -------------------------------------------------------------------------------- /blog/__pycache__/urls.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/urls.cpython-310.pyc -------------------------------------------------------------------------------- /blog/__pycache__/views.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/__pycache__/views.cpython-310.pyc -------------------------------------------------------------------------------- /blog/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from blog.models import Blog, Contact 3 | 4 | # Register your models here. 5 | 6 | admin.site.register(Blog) 7 | admin.site.register(Contact) 8 | -------------------------------------------------------------------------------- /blog/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class BlogConfig(AppConfig): 5 | default_auto_field = 'django.db.models.BigAutoField' 6 | name = 'blog' 7 | -------------------------------------------------------------------------------- /blog/migrations/0001_initial.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 4.0.2 on 2022-08-21 09:07 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | initial = True 9 | 10 | dependencies = [ 11 | ] 12 | 13 | operations = [ 14 | migrations.CreateModel( 15 | name='Blog', 16 | fields=[ 17 | ('sno', models.AutoField(primary_key=True, serialize=False)), 18 | ('title', models.CharField(max_length=300)), 19 | ('content', models.TextField()), 20 | ('slug', models.CharField(max_length=100)), 21 | ('time', models.DateTimeField(auto_now_add=True)), 22 | ], 23 | ), 24 | ] 25 | -------------------------------------------------------------------------------- /blog/migrations/0002_contact.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 4.0.2 on 2022-08-23 11:27 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | dependencies = [ 9 | ('blog', '0001_initial'), 10 | ] 11 | 12 | operations = [ 13 | migrations.CreateModel( 14 | name='Contact', 15 | fields=[ 16 | ('sno', models.AutoField(primary_key=True, serialize=False)), 17 | ('name', models.CharField(max_length=30)), 18 | ('email', models.CharField(max_length=40)), 19 | ('message', models.TextField()), 20 | ('time', models.DateTimeField(auto_now_add=True)), 21 | ], 22 | ), 23 | ] 24 | -------------------------------------------------------------------------------- /blog/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/migrations/__init__.py -------------------------------------------------------------------------------- /blog/migrations/__pycache__/0001_initial.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/migrations/__pycache__/0001_initial.cpython-310.pyc -------------------------------------------------------------------------------- /blog/migrations/__pycache__/0002_contact.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/migrations/__pycache__/0002_contact.cpython-310.pyc -------------------------------------------------------------------------------- /blog/migrations/__pycache__/__init__.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Hancie123/myBlog-in-Django/9179e11284dcf690a246c749392c4538a4c0e0c6/blog/migrations/__pycache__/__init__.cpython-310.pyc -------------------------------------------------------------------------------- /blog/models.py: -------------------------------------------------------------------------------- 1 | from django.db import models 2 | 3 | # Create your models here. 4 | 5 | 6 | class Blog(models.Model): 7 | sno = models.AutoField(primary_key=True) 8 | title = models.CharField(max_length=300) 9 | content = models.TextField() 10 | slug = models.CharField(max_length=100) 11 | time = models.DateTimeField(auto_now_add=True) 12 | 13 | def __str__(self): 14 | return self.title 15 | 16 | 17 | class Contact(models.Model): 18 | sno = models.AutoField(primary_key=True) 19 | name = models.CharField(max_length=30) 20 | email = models.CharField(max_length=40) 21 | message = models.TextField() 22 | time = models.DateTimeField(auto_now_add=True) 23 | 24 | def __str__(self): 25 | return self.name 26 | -------------------------------------------------------------------------------- /blog/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /blog/urls.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from django.urls import path, include 3 | from blog import views 4 | 5 | admin.site.site_header='Hancie Phago' 6 | admin.site.site_title="Welcome to Hancie Phago Dashboard" 7 | admin.site.index_title="Hancie Phago Portal" 8 | 9 | 10 | urlpatterns = [ 11 | path('admin/',admin.site.urls), 12 | path('',views.index,name='index'), 13 | path('blog/',views.blog,name='blog'), 14 | path('blogpost/',views.blogpost,name='blogpost'), 15 | path('about/',views.about,name='about'), 16 | path('contact/',views.contact,name='contact'), 17 | path('search/',views.search,name='search') 18 | ] -------------------------------------------------------------------------------- /blog/views.py: -------------------------------------------------------------------------------- 1 | from django.shortcuts import render, HttpResponse 2 | from blog.models import Blog,Contact 3 | import math 4 | 5 | # Create your views here. 6 | def index(request): 7 | data = Blog.objects.all() 8 | result={'blogdata': data} 9 | return render(request, 'index.html', result) 10 | 11 | def blog(request): 12 | no_of_post=3 13 | page=request.GET.get('page') 14 | if page is None: 15 | page=1 16 | else: 17 | page=int(page) 18 | 19 | 20 | blog = Blog.objects.all() 21 | length=len(blog) 22 | blog=blog[(page-1)*no_of_post: page*no_of_post] 23 | if page>1: 24 | prev=page-1 25 | else: 26 | prev=None 27 | 28 | if page 8 |

ABOUT

9 |
10 |

Lorem ipsum dolor sit amet consectetur 11 | adipisicing elit. Odio, asperiores quos. Consequatur, et atque. Laudantium voluptatibus tenetur 12 | reiciendis molestiae beatae obcaecati quo commodi nostrum numquam, expedita iusto animi neque 13 | error, perspiciatis libero! Eum rem voluptas eveniet tempora consectetur facere accusamus 14 | illum vel non mollitia! Harum quisquam facilis omnis vitae voluptas nihil aut iusto, 15 | illum earum culpa sint. Assumenda dolor, in eveniet non veniam incidunt debitis 16 | impedit soluta perspiciatis repudiandae officia! Tenetur exercitationem error 17 | voluptates voluptate quo doloremque blanditiis temporibus magni delectus labore 18 | ex quam necessitatibus, autem nemo. Natus veniam, dignissimos a expedita tempore 19 | quia modi repellat accusamus adipisci distinctio aut itaque blanditiis magni 20 | est fuga dolores officiis vel nesciunt quidem ullam. Amet ad praesentium eius 21 | adipisci illum quasi, in magnam consequatur debitis distinctio nemo cumque 22 | consequuntur tenetur nostrum ipsum temporibus consectetur? Eveniet fuga praesentium 23 | soluta rem quisquam atque, odio et tempore consectetur vero amet repudiandae hic 24 | aliquid a error odit perspiciatis. Adipisci quidem, atque odio non voluptatibus 25 | corrupti voluptates quod possimus minus iusto eveniet culpa illum minima praesentium 26 | mollitia natus? Sequi reprehenderit voluptas illum quas fugiat blanditiis quibusdam 27 | maxime quisquam adipisci aliquid a nesciunt sapiente assumenda nam eum ratione facere, 28 | dicta deserunt dolorem eaque ab provident. Eius est rerum libero facilis rem iste.

29 | 30 | 31 | 32 | 33 | 34 | 35 | {% endblock body %} 36 | {% block aboutfooter %}fixed-bottom {% endblock aboutfooter %} -------------------------------------------------------------------------------- /templates/base.html: -------------------------------------------------------------------------------- 1 | {% load static %} 2 | 3 | 4 | 5 | 6 | 7 | {% block title %}{% endblock title %} 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 48 | 49 | {% block body %} 50 | 51 | 52 | {% endblock body %} 53 | 54 |
55 |
58 | 59 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /templates/blog.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% block blogactive %}active{% endblock blogactive %} 3 | 4 | {% block body %} 5 | 13 |
14 |

Welcome to Hancie Phago Blog

15 | 16 | {% for blog in blog %} 17 | 18 |
19 |
20 |
{{blog.title}}
21 |
22 |

{{blog.content| slice:500}}...

23 | Read More... 24 |
25 |
26 | 27 |
28 |
29 | {% endfor %} 30 |
31 | {% if prev %} 32 | 33 | 34 | {% else %} 35 | 36 | {% endif %} 37 | 38 | 39 | {% if nxt %} 40 | 41 | 42 | {% else %} 43 | 44 | {% endif %} 45 | 46 | 47 |
48 | 49 |
50 | {% endblock body %} -------------------------------------------------------------------------------- /templates/blogpost.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | 3 | {% block body %} 4 |
5 |

{{blogs.title}}

6 |
7 | {{blogs.content}} 8 |
9 |
10 | {% endblock body %} 11 | 12 | {% block blogpostfooter %}fixed-bottom{% endblock blogpostfooter %} 13 | 14 | -------------------------------------------------------------------------------- /templates/contact.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% block contactactive %}active{% endblock contactactive %} 3 | 4 | {% block body %} 5 | 6 | {% if success %} 7 | 8 | 12 | {% endif %} 13 | 14 | 15 |
16 |
17 |
18 |

Get in touch

19 |
20 |
21 |
22 |
23 | {% csrf_token %} 24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 | 57 | 128 | 129 | {% endblock body %} -------------------------------------------------------------------------------- /templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% block homeactive %}active{% endblock homeactive %} 3 | 4 | 5 | {% block body %} 6 | {% load static %} 7 | 28 |
29 | 37 | 38 | 39 | 40 |

My Blog

41 | {% for data in blogdata %} 42 |
43 |
44 |
{{data.title}}
45 |
46 |

{{data.content| slice:500}}....

47 | Read More... 48 |
49 |
50 | 51 |
52 |
53 | {% endfor %} 54 | {% endblock body %} -------------------------------------------------------------------------------- /templates/search.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | 3 | {% block body %} 4 | 5 |

This is my search page

6 | 7 | {% endblock body %} --------------------------------------------------------------------------------