django_filters mit Bootstrap stylen?
Verfasst: Dienstag 19. November 2024, 07:58
Moin zusammen,
ich habe Bootstrap in meinem Projekt per CDN eingebunden. Für eine Form habe ich es schon verwendet und dort funktioniert es auch. Ich habe dem entsprechenden <div> die Class "form-group" mitgegeben. Das alleine funktionierte noch nicht, ich musste meiner Form zusätzlich in der forms.py noch Angaben zu widgets mitgeben:
Danach funktionierte es und es sieht auch aus wie gewünscht. Bei meinem Filter habe ich ebenfalls die Class "form-group" gesetzt, aber das Design verändert sich nicht zum "Bootstrap Design".
filters.py:
responsibilities.html Auszug:
views.py Auszug:
Hat jemand eine Idee woran ich scheitere? Muss ich auch noch widgets hinzufügen? Wenn ja, wie müssen diese aussehen?
Kann man eigentlich irgendwie Bilder einfügen ohne die irgendwo extern hochzuladen?
Viele Grüße
gospat
ich habe Bootstrap in meinem Projekt per CDN eingebunden. Für eine Form habe ich es schon verwendet und dort funktioniert es auch. Ich habe dem entsprechenden <div> die Class "form-group" mitgegeben. Das alleine funktionierte noch nicht, ich musste meiner Form zusätzlich in der forms.py noch Angaben zu widgets mitgeben:
Code: Alles auswählen
class ResponsibilityForm(forms.ModelForm):
class Meta:
model = Responsibility
fields = ['project', 'system', 'department', 'employee']
labels = {
'project': 'Projekt',
'system': 'Baugruppe',
'department': 'Abteilung',
'employee': 'Mitarbeiter',
}
widgets = {
'project': forms.Select(attrs={'class': 'form-control'}),
'system': forms.Select(attrs={'class': 'form-control'}),
'department': forms.Select(attrs={'class': 'form-control'}),
'employee': forms.Select(attrs={'class': 'form-control'}),
}
filters.py:
Code: Alles auswählen
import django_filters
from .models import *
class ResponsibilityFilter(django_filters.FilterSet):
class Meta:
model = Responsibility
fields = ['project', 'system', 'department', 'employee']
Code: Alles auswählen
<div class="form-group">
<form method="GET">
{{ resp_filter.form.as_p }}
<button class="btn btn-warning" type="submit">Filtern</button>
<button class="btn btn-danger"><a href="{% url 'responsibilities' %}" class="button-link">Filter löschen</a></button>
</form>
</div>
Code: Alles auswählen
from django.shortcuts import render, redirect
from .models import Responsibility
from .forms import ResponsibilityForm
from .filters import ResponsibilityFilter
def responsibilities(request):
responsibilities_obj = Responsibility.objects.all()
resp_filter = ResponsibilityFilter(request.GET, queryset=responsibilities_obj)
responsibilities_obj = resp_filter.qs
context = {'responsibilities': responsibilities_obj, 'resp_filter': resp_filter}
return render(request, 'system_cockpit/responsibilities.html', context)
Kann man eigentlich irgendwie Bilder einfügen ohne die irgendwo extern hochzuladen?
Viele Grüße
gospat