I am trying to log a button click from a template.
Can someone please help???
view.py
from django.shortcuts import render
from .models import UploadFile
from django.contrib.auth.decorators import login_required
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
import logging
logger = logging.getLogger('download_user')
@login_required
def index(request):
client_ip = request.META['REMOTE_ADDR']
upload_list = UploadFile.objects.all().order_by('file')
filename = ''
for filename in upload_list:
print(filename.file)
if 'download' in request.POST:
logger.debug('user: {} |ip address: {} |downloaded file:
{}'.format(request.user, client_ip, filename.file))
# for f in request.FILES.getlist('upload_list.file'):
# filename = f.name
page = request.GET.get('page', 1)
paginator = Paginator(upload_list, 20)
try:
uploads = paginator.page(page)
except PageNotAnInteger:
uploads = paginator.page(1)
except EmptyPage:
uploads = paginator.page(paginator.num_pages)
context = {
'uploads': uploads,
}
return render(request, 'uploads/index.html', context)
index.html
{% extends 'base.html' %}
{% block title %}Download Source Code{% endblock %}
{% block content %}
{% if user.is_authenticated %}
<div class="container">
<div class="jumbotron">
<h2 class="text-center">Download Source Code</h2>
<div class="row">
<div class="col-lg-12">
<table class="table table-striped table-hover
table-responsive">
<thead class="thead-dark">
<tr>
<th style="width: 400px"
class="col-md-4">Product</th>
<th style="width: 400px"
class="col-md-4">Name</th>
<th style="width: 400px"
class="col-md-4">File</th>
<th style="width: 250px"
class="col-md-4">Description</th>
<th style="width: 400px"
class="col-md-4">MD5 Hash</th>
<th style="width: 400px"
class="col-md-4">SHA256</th>
<th style="width: 400px"
class="col-md-4">Download</th>
</tr>
</thead>
<tbody>
{% for upload in uploads %}
{% if upload.verified_by %}
<tr>
<td style="width: 400px"
class="col-md-4">{{ upload.products }}</td>
<td style="width: 400px"
class="col-md-4">{{ upload.name }}</td>
<td style="width: 400px"
class="col-md-4"><a href="{{ MEDIA_URL }}{{ upload.file }}">{{ upload.file
}}</a></td>
<td style="width: 250px"
class="col-md-4">{{ upload.description }}</td>
<td style="width: 400px"
class="col-md-4">{{ upload.md5sum }}</td>
<td style="width: 400px"
class="col-md-4">{{ upload.sha256sum }}</td>
<form method="GET">
{% csrf_token %}
<td>
{# <input type="button"
id="soft" class="btn btn-primary btn-sm" name="download" value="Download
Software">#}
<a href="{{ upload.file.url }}"
class="btn btn-primary btn-sm" name="download">Download Software</a>
</td>
</form>
</tr>
{% endif %}
{% endfor %}
</tbody>
</table>
{% if uploads.has_other_pages %}
<ul class="pagination">
{% if uploads.has_previous %}
<li><a href="?page={{
uploads.previous_page_number }}">«</a></li>
{% else %}
<li class="disabled"><span>«</span></li>
{% endif %}
{% for i in uploads.paginator.page_range %}
{% if uploads.number == i %}
<li class="active"><span>{{ i }} <span
class="sr-only">(current)</span></span></li>
{% else %}
<li><a href="?page={{ i }}">{{ i }}</a></li>
{% endif %}
{% endfor %}
{% if downloads.has_next %}
<li><a href="?page={{ uploads.next_page_number
}}">»</a></li>
{% else %}
<li class="disabled"><span>»</span></li>
{% endif %}
</ul>
{% endif %}
</div>
</div>
</div>
</div>
{% else %}
<div class="container">
<div class="jumbotron">
<p>You are logged in.</p>
</div>
</div>
{% endif %}
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/8223bd96-1989-4cc1-b75d-14cd0f9b4b4b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.