changed view and deleted the database unique filed

This commit is contained in:
Ivan Hörler 2017-12-29 19:26:01 +01:00
parent 13805f790d
commit 19afc446ed
8 changed files with 99 additions and 18 deletions

View File

@ -55,9 +55,11 @@ def get_exchange_rate():
# https://stackoverflow.com/a/12282040/4061870
# seams like snb striked the microsecond somewhere between Nov. and
# Dez. 2017 so maybe first check time type. "%Y-%m-%dT%H:%M:%S.%f%z"
date = datetime.strptime(''.join(datetime_str.rsplit(':', 1)),
"%Y-%m-%dT%H:%M:%S%z").strftime("%Y-%m-%d")
# only the values of today are used so check for date:
date = datetime.strptime(''.join(
datetime_str.rsplit(':', 1)),
"%Y-%m-%dT%H:%M:%S%z").strftime(
"%Y-%m-%d")
# only the values of today are used so check for date in XML:
if date == today:
title = item.find('none:title', ns).text
base_currency = item.find(rate_path +

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-12-29 16:08
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('currencies', '0003_auto_20171227_1119'),
]
operations = [
migrations.AlterField(
model_name='exchangerate',
name='name',
field=models.CharField(max_length=200),
),
]

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-12-29 16:35
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('currencies', '0004_auto_20171229_1708'),
]
operations = [
migrations.AlterField(
model_name='exchangerate',
name='date',
field=models.DateField(null=True, verbose_name='%Y-%m-%dT%H:%M:%S'),
),
]

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-12-29 16:47
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('currencies', '0005_auto_20171229_1735'),
]
operations = [
migrations.AlterField(
model_name='exchangerate',
name='date',
field=models.DateTimeField(null=True, verbose_name='%Y-%m-%dT%H:%M:%S'),
),
]

View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.7 on 2017-12-29 17:06
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('currencies', '0006_auto_20171229_1747'),
]
operations = [
migrations.AlterField(
model_name='exchangerate',
name='date',
field=models.DateField(null=True, verbose_name='%Y-%m-%d'),
),
]

View File

@ -2,7 +2,7 @@ from django.db import models
class ExchangeRate(models.Model):
name = models.CharField(max_length=200, unique=True)
name = models.CharField(max_length=200)
date = models.DateField('%Y-%m-%d', null=True)
exchange_rate_to_chf = models.FloatField(max_length=5)

View File

@ -13,14 +13,15 @@
<th scope="col">{{ currency.name }}</th>
{% endfor %}
</tr>
<tr>
<td>{{ date }}</td>
{% for currency in currency_list %}
<td>{{ currency.exchange_rate_to_chf }}</td>
{% endfor %}
</tr>
<tr>
<td>{{ date }}</td>
{% for currency in currency_list %}
<td>{{ currency.exchange_rate_to_chf }}</td>
{% endfor %}
</tr>
</table>
<br>
<p> {{ message }} </p>
<br>
<ul>
{% for currency in currency_list %}

View File

@ -6,14 +6,10 @@ from currencies import exchange_rates
def currencies(request):
# return HttpResponse("exchange_rates")
raw_data, date = exchange_rates.get_exchange_rate()
message = ""
for currency, rate in raw_data.items():
if ExchangeRate.objects.filter(name=currency):
e = ExchangeRate.objects.filter(
name=currency,
).update(
exchange_rate_to_chf=rate,
date=date
)
if ExchangeRate.objects.filter(date=date):
message = "already querried today"
else:
e = ExchangeRate.objects.create(
name=currency,
@ -21,8 +17,10 @@ def currencies(request):
date=date
)
e.save()
message = "updated successfully"
currency_list = ExchangeRate.objects.all()
return render(request,
'currencies/index.html',
{'currency_list': currency_list,
'date': date})
'date': date,
'message': message})