added models

This commit is contained in:
DerTyp187
2021-11-10 09:53:46 +01:00
parent 4a7b65b721
commit 56d3037856
7 changed files with 111 additions and 10 deletions

View File

@@ -1,3 +1,5 @@
from django.contrib import admin
from .models import Category, Topic
# Register your models here.
admin.site.register(Category)
admin.site.register(Topic)

View File

@@ -0,0 +1,23 @@
# Generated by Django 3.2.9 on 2021-11-10 07:58
from django.db import migrations, models
import django.utils.timezone
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Category',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=100)),
('date_created', models.DateTimeField(default=django.utils.timezone.now)),
],
),
]

View File

@@ -0,0 +1,30 @@
# Generated by Django 3.2.9 on 2021-11-10 08:12
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
class Migration(migrations.Migration):
dependencies = [
('main', '0001_initial'),
]
operations = [
migrations.AlterField(
model_name='category',
name='title',
field=models.CharField(max_length=100, unique=True),
),
migrations.CreateModel(
name='Topic',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=200)),
('code_text', models.TextField()),
('date_created', models.DateTimeField(default=django.utils.timezone.now)),
('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='main.category')),
],
),
]

View File

@@ -1,3 +1,20 @@
from django.db import models
from django.db.models.fields.related import ForeignKey
from django.utils import timezone
# Create your models here.
class Category(models.Model):
title = models.CharField(max_length=100, unique=True)
date_created = models.DateTimeField(default=timezone.now)
def __str__(self):
return self.title
class Topic(models.Model):
title = models.CharField(max_length= 200)
code_text = models.TextField()
date_created = models.DateTimeField(default=timezone.now)
category = models.ForeignKey(Category, on_delete=models.CASCADE)
def __str__(self):
return self.category.title + " - " + self.title

View File

@@ -1,5 +1,9 @@
{% extends "main/base.html" %}
{% block content %}
<div id="main-headline">
<h2>{{ category_obj.title }}</h2>
</div>
<div id="list">
<div class="list-item">
<img src="c_icon.png"/>

View File

@@ -1,12 +1,11 @@
{% extends "main/base.html" %}
{% block content %}
<div id="main-headline">
<h2>How To Convert a String to Int</h2>
<h2>{{ title }}</h2>
</div>
<div id="main-content-code">
<pre><code style="padding-top: 5px; padding-bottom: 5px;"class="language-c">int c;
c = int.c * t/g;</code></pre>
<pre><code style="padding-top: 5px; padding-bottom: 5px;"class="language-{{category_title}}">{{code}}</code></pre>
</div>
{% endblock content %}

View File

@@ -1,10 +1,36 @@
from django.shortcuts import render
from django.shortcuts import render, redirect
from .models import Category, Topic
def index(req):
return render(req, "main/index.html")
def topic(req, category, topic):
return render(req, "main/topic.html")
if topic and category:
category_obj = Category.objects.filter(title = category).first()
if category_obj:
topic_obj = Topic.objects.filter(title=topic, category = category_obj).first()
if topic_obj:
context = {
'title': topic_obj.title,
'code': topic_obj.code_text,
'category_title': category_obj.title,
}
return render(req, "main/topic.html", context)
return redirect("main-index")
def category(req, category):
return render(req, "main/category.html")
if category:
category_obj = Category.objects.filter(title = category).first()
if category_obj:
return render(req, "main/category.html", {'category_obj': category_obj})
return redirect("main-index")