add workplace option
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,5 @@
|
||||
from django import forms
|
||||
from work.models import HoursInput
|
||||
from work.models import HoursInput, WorkplaceInput
|
||||
from datetime import datetime
|
||||
|
||||
|
||||
@@ -25,6 +25,28 @@ class HoursInputForm(forms.ModelForm):
|
||||
error_messages={
|
||||
'required': 'Wprowadź liczbę godzin',
|
||||
})
|
||||
# self.fields['workplace'] = forms.CharField(
|
||||
# widget=forms.TextInput(attrs={
|
||||
# 'placeholder': 'Miejsce pracy'
|
||||
# }),
|
||||
# error_messages={
|
||||
# 'required': 'Wprowadź miejsce pracy',
|
||||
# })
|
||||
self.fields['workplace'] = forms.ModelChoiceField(queryset=WorkplaceInput.objects.all().order_by('id'))
|
||||
|
||||
for field in ['date', 'hours_number', 'workplace']:
|
||||
self.fields[field].help_text = None
|
||||
self.fields[field].label = ''
|
||||
|
||||
|
||||
class WorkplaceInputForm(forms.ModelForm):
|
||||
|
||||
class Meta:
|
||||
model = WorkplaceInput
|
||||
fields = ['workplace']
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(WorkplaceInputForm, self).__init__(*args, **kwargs)
|
||||
self.fields['workplace'] = forms.CharField(
|
||||
widget=forms.TextInput(attrs={
|
||||
'placeholder': 'Miejsce pracy'
|
||||
@@ -32,8 +54,5 @@ class HoursInputForm(forms.ModelForm):
|
||||
error_messages={
|
||||
'required': 'Wprowadź miejsce pracy',
|
||||
})
|
||||
|
||||
for field in ['date', 'hours_number', 'workplace']:
|
||||
self.fields[field].help_text = None
|
||||
self.fields[field].label = ''
|
||||
|
||||
self.fields['workplace'].help_text = None
|
||||
self.fields['workplace'].label = ''
|
||||
27
work/migrations/0003_auto_20201228_1744.py
Normal file
27
work/migrations/0003_auto_20201228_1744.py
Normal file
@@ -0,0 +1,27 @@
|
||||
# Generated by Django 3.1.2 on 2020-12-28 16:44
|
||||
|
||||
from django.conf import settings
|
||||
import django.core.validators
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('work', '0002_hoursinput_date'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='hoursinput',
|
||||
name='user',
|
||||
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='hoursinput',
|
||||
name='hours_number',
|
||||
field=models.IntegerField(validators=[django.core.validators.MaxValueValidator(15, 'Niemożliwe, że tyle pracowałeś'), django.core.validators.MinValueValidator(0, 'Wprowadź liczbę dodatnią 0-15')]),
|
||||
),
|
||||
]
|
||||
20
work/migrations/0004_workplaceinput.py
Normal file
20
work/migrations/0004_workplaceinput.py
Normal file
@@ -0,0 +1,20 @@
|
||||
# Generated by Django 3.1.2 on 2020-12-28 17:31
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('work', '0003_auto_20201228_1744'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='WorkplaceInput',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('workplace', models.CharField(max_length=100)),
|
||||
],
|
||||
),
|
||||
]
|
||||
Binary file not shown.
BIN
work/migrations/__pycache__/0004_workplaceinput.cpython-38.pyc
Normal file
BIN
work/migrations/__pycache__/0004_workplaceinput.cpython-38.pyc
Normal file
Binary file not shown.
@@ -1,9 +1,12 @@
|
||||
from django.db import models
|
||||
import datetime
|
||||
from django.core.validators import MaxValueValidator, MinValueValidator
|
||||
from django.conf import settings
|
||||
|
||||
|
||||
class HoursInput(models.Model):
|
||||
User = settings.AUTH_USER_MODEL
|
||||
user = models.ForeignKey(User, null=True, on_delete=models.CASCADE)
|
||||
date = models.DateField(default=datetime.date.today)
|
||||
hours_number = models.IntegerField(validators=[
|
||||
MaxValueValidator(15, "Niemożliwe, że tyle pracowałeś"),
|
||||
@@ -11,3 +14,9 @@ class HoursInput(models.Model):
|
||||
])
|
||||
workplace = models.CharField(max_length=100)
|
||||
|
||||
|
||||
class WorkplaceInput(models.Model):
|
||||
workplace = models.CharField(max_length=100)
|
||||
|
||||
def __str__(self):
|
||||
return self.workplace
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import render
|
||||
from work.forms import HoursInputForm
|
||||
from work.forms import *
|
||||
from django.contrib.auth.decorators import login_required
|
||||
|
||||
#
|
||||
# @login_required
|
||||
# def index(request):
|
||||
# return render(request,'registration/login.html')
|
||||
|
||||
@login_required
|
||||
def get_basic_workdata(request):
|
||||
@@ -14,10 +10,25 @@ def get_basic_workdata(request):
|
||||
if request.method == 'POST':
|
||||
form = HoursInputForm(request.POST)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
fs = form.save(commit=False)
|
||||
fs.user = request.user
|
||||
fs.save()
|
||||
return HttpResponseRedirect('/')
|
||||
else:
|
||||
form = HoursInputForm()
|
||||
|
||||
return render(request, 'inputhours.html', {'form': form, 'title': title})
|
||||
|
||||
|
||||
@login_required
|
||||
def addworkplace_view(request):
|
||||
title = "Prace"
|
||||
if request.method == 'POST':
|
||||
form = WorkplaceInputForm(request.POST)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
return HttpResponseRedirect('/')
|
||||
else:
|
||||
form = WorkplaceInputForm()
|
||||
|
||||
return render(request, 'addworkplace.html', {'form': form, 'title': title})
|
||||
|
||||
Reference in New Issue
Block a user