Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Master #16

Open
wants to merge 46 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
4e04cdf
Finish Introduction and Django Admin
Apr 25, 2024
69a2803
version2
Apr 26, 2024
49a089f
Create templates
montagu101 Apr 26, 2024
927e024
changed
Apr 26, 2024
c3334e1
Finish html frameworks
Apr 26, 2024
f560db2
update
Apr 26, 2024
3fcfb5f
namechange
Apr 26, 2024
e20bb61
templateTags
Apr 26, 2024
708423c
custom_Filters
Apr 26, 2024
c595c20
Finish custom template tags
Apr 26, 2024
f394b84
Finish custom filters
Apr 27, 2024
0653a5f
Finish crispy forms
Apr 27, 2024
94c45dc
update
May 5, 2024
8d0308a
environmentTest
May 5, 2024
3b978e8
Finish database optimization
May 5, 2024
27805d9
change
May 5, 2024
18c6841
auth added
May 6, 2024
f36c4fa
settings_auth
May 6, 2024
638e915
profile
May 6, 2024
a6960a4
auth
May 8, 2024
63cba82
serializer
May 13, 2024
fa2720f
api_alignment
May 13, 2024
abb58d4
Finish authentication
May 19, 2024
fdf5190
Finish permissions
May 19, 2024
c4c4c62
Finish related fields
May 19, 2024
7892ab7
Finish nested relationships
May 19, 2024
ede9c0c
Finish browsable API
May 20, 2024
e40e148
Finish viewsets and routers
May 21, 2024
c11d48c
Finish testing DRF with mocks
May 21, 2024
3081b10
dbUpdate
May 21, 2024
04f5513
Finish caching
May 21, 2024
ead663e
Finish throttling
May 23, 2024
3d2b020
Finish filtering
May 23, 2024
80b6007
Finish pagination and django filter
May 25, 2024
41b24f8
dbUpdate
May 25, 2024
ed02407
Finish simplejwt
May 26, 2024
010daaf
Finish django-versatileimagefield
May 26, 2024
9dda5ed
Finish JavaScript intro and fundamentals
May 26, 2024
982d679
update db
May 26, 2024
d2ae1f7
Finish JavaScript functions
May 26, 2024
bbef1ea
Finish JavaScript classes
May 26, 2024
d064bfe
Update blog.js
May 26, 2024
d5d36ad
Finish ReactJS
May 26, 2024
1562a94
Finish JSX
May 26, 2024
c4d153c
Finish fetch and React hooks
May 26, 2024
af4f7dd
Create requests_test.py
May 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 26 additions & 3 deletions blango/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"""

from pathlib import Path
import os

# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
Expand All @@ -25,7 +26,7 @@
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

ALLOWED_HOSTS = []
ALLOWED_HOSTS = ['*']


# Application definition
Expand All @@ -37,17 +38,23 @@
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog',
]

MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
'''
Reminder: MIDDLEWARE COMMENT OUT these changes only apply to working with Django on Codio. Do
not make these changes to a project you plan on making available on the
internet.
'''

ROOT_URLCONF = 'blango.urls'

Expand Down Expand Up @@ -123,3 +130,19 @@
# https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field

DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'

#....this is set only for the course, remove when finished
'''
Reminder: these changes only apply to working with Django on Codio. Do
not make these changes to a project you plan on making available on the
internet.
'''
X_FRAME_OPTIONS = 'ALLOW-FROM ' +
os.environ.get('CODIO_HOSTNAME') + '-8000.codio.io'
CSRF_COOKIE_SAMESITE = None
CSRF_TRUSTED_ORIGINS = [os.environ.get('CODIO_HOSTNAME') +
'-8000.codio.io']
CSRF_COOKIE_SECURE = True
SESSION_COOKIE_SECURE = True
CSRF_COOKIE_SAMESITE = 'None'
SESSION_COOKIE_SAMESITE = 'None'
Empty file added blog/__init__.py
Empty file.
Binary file added blog/__pycache__/__init__.cpython-311.pyc
Binary file not shown.
Binary file added blog/__pycache__/admin.cpython-311.pyc
Binary file not shown.
Binary file added blog/__pycache__/apps.cpython-311.pyc
Binary file not shown.
Binary file added blog/__pycache__/models.cpython-311.pyc
Binary file not shown.
18 changes: 18 additions & 0 deletions blog/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
from django.contrib import admin

# Register your models here.

from blog.models import Tag, Post

class PostAdmin(admin.ModelAdmin):
prepopulated_fields = {"slug": ("title",)}
list_display = ('slug', 'published_at')





admin.site.register(Tag)
admin.site.register(Post, PostAdmin)


6 changes: 6 additions & 0 deletions blog/apps.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
from django.apps import AppConfig


class BlogConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'blog'
39 changes: 39 additions & 0 deletions blog/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Generated by Django 5.0.4 on 2024-04-25 20:12

import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models


class Migration(migrations.Migration):

initial = True

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]

operations = [
migrations.CreateModel(
name='Tag',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('value', models.TextField(max_length=100)),
],
),
migrations.CreateModel(
name='Post',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('modified_at', models.DateTimeField(auto_now=True)),
('published_at', models.DateTimeField(blank=True, null=True)),
('title', models.TextField(max_length=100)),
('slug', models.SlugField()),
('summary', models.TextField(max_length=500)),
('content', models.TextField()),
('author', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL)),
('tags', models.ManyToManyField(related_name='posts', to='blog.tag')),
],
),
]
Empty file added blog/migrations/__init__.py
Empty file.
Binary file not shown.
Binary file added blog/migrations/__pycache__/__init__.cpython-311.pyc
Binary file not shown.
25 changes: 25 additions & 0 deletions blog/models.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
from django.db import models
from django.conf import settings

class Tag(models.Model):
value = models.TextField(max_length=100)

def __str__(self):
return self.value


class Post(models.Model):
author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT)
created_at = models.DateTimeField(auto_now_add=True)
modified_at = models.DateTimeField(auto_now=True)
published_at = models.DateTimeField(blank=True, null=True)
title = models.TextField(max_length=100)
slug = models.SlugField()
summary = models.TextField(max_length=500)
content = models.TextField()
tags = models.ManyToManyField(Tag, related_name="posts")

def __str__(self):
return self.title


3 changes: 3 additions & 0 deletions blog/tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.test import TestCase

# Create your tests here.
3 changes: 3 additions & 0 deletions blog/views.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from django.shortcuts import render

# Create your views here.
Binary file added db.sqlite3
Binary file not shown.