Compare commits
2 Commits
49c98b5cb6
...
26cbed89c8
Author | SHA1 | Date | |
---|---|---|---|
![]() |
26cbed89c8 | ||
![]() |
aea40fe98a |
doc/bachelorarbeit_EstherKleinhenz
@ -24,8 +24,9 @@
|
||||
\babel@aux{german}{}
|
||||
\@input{abstract/abstract.aux}
|
||||
\HyPL@Entry{2<</S/r>>}
|
||||
\@input{chapters/einleitung.aux}
|
||||
\HyPL@Entry{6<</S/D>>}
|
||||
\@writefile{toc}{\contentsline {chapter}{Abbildungsverzeichnis}{1}{chapter*.4}}
|
||||
\@input{chapters/einleitung.aux}
|
||||
\@input{chapters/framework.aux}
|
||||
\@input{chapters/prototyp.aux}
|
||||
\@input{chapters/ergebnis.aux}
|
||||
@ -38,4 +39,4 @@
|
||||
\bibcite{Ndukwe}{{Ndu17}{}{{}}{{}}}
|
||||
\bibcite{Shelest}{{She09}{}{{}}{{}}}
|
||||
\providecommand\NAT@force@numbers{}\NAT@force@numbers
|
||||
\@writefile{toc}{\contentsline {chapter}{Referenzen}{13}{chapter*.6}}
|
||||
\@writefile{toc}{\contentsline {chapter}{Referenzen}{15}{chapter*.7}}
|
||||
|
@ -0,0 +1,9 @@
|
||||
\babel@toc {german}{}
|
||||
\babel@toc {german}{}
|
||||
\addvspace {10\p@ }
|
||||
\addvspace {10\p@ }
|
||||
\contentsline {figure}{\numberline {2.1}{\ignorespaces Vereinfachter MVP\relax }}{5}{figure.caption.5}
|
||||
\contentsline {figure}{\numberline {2.2}{\ignorespaces Request-Response-Kreislauf des Django Frameworks\relax }}{6}{figure.caption.6}
|
||||
\addvspace {10\p@ }
|
||||
\addvspace {10\p@ }
|
||||
\addvspace {10\p@ }
|
@ -1,4 +1,4 @@
|
||||
This is XeTeX, Version 3.14159265-2.6-0.99999 (TeX Live 2018) (preloaded format=xelatex 2018.6.7) 2 OCT 2018 18:40
|
||||
This is XeTeX, Version 3.14159265-2.6-0.99999 (TeX Live 2018) (preloaded format=xelatex 2018.6.7) 4 OCT 2018 21:57
|
||||
entering extended mode
|
||||
\write18 enabled.
|
||||
file:line:error style messages enabled.
|
||||
@ -1134,10 +1134,53 @@ Package babel Info: Redefining german shorthand "~
|
||||
[4
|
||||
|
||||
|
||||
]
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 52.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 52.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 52.
|
||||
(/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.lof)
|
||||
\tf@lof=\write7
|
||||
\openout7 = `bachelorabeit_EstherKleinhenz.lof'.
|
||||
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 57.
|
||||
[1
|
||||
|
||||
|
||||
]
|
||||
\openout2 = `chapters/einleitung.aux'.
|
||||
|
||||
(./chapters/einleitung.tex
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
[2
|
||||
|
||||
|
||||
|
||||
]
|
||||
Kapitel 1.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 1.
|
||||
@ -1178,22 +1221,18 @@ Missing character: There is no ̈ in font aer10!
|
||||
Missing character: There is no ̈ in font aer10!
|
||||
)
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 55.
|
||||
[1
|
||||
|
||||
|
||||
|
||||
]
|
||||
(babel) in language on input line 57.
|
||||
[3]
|
||||
|
||||
Package Fancyhdr Warning: \headheight is too small (12.0pt):
|
||||
Make it at least 13.59999pt.
|
||||
@ -1201,18 +1240,18 @@ Package Fancyhdr Warning: \headheight is too small (12.0pt):
|
||||
This may cause the page layout to be inconsistent, however.
|
||||
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 55.
|
||||
(babel) in language on input line 57.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 55.
|
||||
[2]
|
||||
(babel) in language on input line 57.
|
||||
[4]
|
||||
\openout2 = `chapters/framework.aux'.
|
||||
|
||||
(./chapters/framework.tex
|
||||
@ -1231,79 +1270,77 @@ Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 5.
|
||||
File: figures/MVP.png Graphic file (type bmp)
|
||||
<figures/MVP.png>
|
||||
File: figures/request-response-cycle.png Graphic file (type bmp)
|
||||
<figures/request-response-cycle.png>
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 22.
|
||||
(babel) in language on input line 16.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 22.
|
||||
(babel) in language on input line 16.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 22.
|
||||
(babel) in language on input line 16.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 22.
|
||||
(babel) in language on input line 16.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 22.
|
||||
(babel) in language on input line 16.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 22.
|
||||
[3
|
||||
(babel) in language on input line 16.
|
||||
[5
|
||||
|
||||
|
||||
|
||||
|
||||
]
|
||||
File: figures/request-response-cycle.png Graphic file (type bmp)
|
||||
<figures/request-response-cycle.png>
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 27.
|
||||
(babel) in language on input line 24.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 27.
|
||||
(babel) in language on input line 24.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 27.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 28.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 28.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 28.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 29.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 29.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 29.
|
||||
(babel) in language on input line 24.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 30.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 30.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 30.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 30.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 30.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 30.
|
||||
[6]
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 32.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 32.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 32.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 38.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 38.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 38.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 55.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 55.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 55.
|
||||
)
|
||||
Underfull \vbox (badness 2671) has occurred while \output is active []
|
||||
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 56.
|
||||
(babel) in language on input line 58.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 56.
|
||||
(babel) in language on input line 58.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 56.
|
||||
(babel) in language on input line 58.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 56.
|
||||
(babel) in language on input line 58.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 56.
|
||||
(babel) in language on input line 58.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 56.
|
||||
[4]
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 56.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 56.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 56.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 56.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 56.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 56.
|
||||
[5]
|
||||
(babel) in language on input line 58.
|
||||
[7]
|
||||
\openout2 = `chapters/prototyp.aux'.
|
||||
|
||||
(./chapters/prototyp.tex
|
||||
@ -1319,7 +1356,7 @@ Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
[6
|
||||
[8
|
||||
|
||||
|
||||
|
||||
@ -1376,18 +1413,18 @@ Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 9.
|
||||
)
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 57.
|
||||
(babel) in language on input line 59.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 57.
|
||||
(babel) in language on input line 59.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 57.
|
||||
(babel) in language on input line 59.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 57.
|
||||
(babel) in language on input line 59.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 57.
|
||||
(babel) in language on input line 59.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 57.
|
||||
[7]
|
||||
(babel) in language on input line 59.
|
||||
[9]
|
||||
\openout2 = `chapters/ergebnis.aux'.
|
||||
|
||||
(./chapters/ergebnis.tex
|
||||
@ -1403,7 +1440,7 @@ Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
[8
|
||||
[10
|
||||
|
||||
|
||||
|
||||
@ -1428,18 +1465,18 @@ Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 3.
|
||||
)
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 58.
|
||||
(babel) in language on input line 60.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 58.
|
||||
(babel) in language on input line 60.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 58.
|
||||
(babel) in language on input line 60.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 58.
|
||||
(babel) in language on input line 60.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 58.
|
||||
(babel) in language on input line 60.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 58.
|
||||
[9]
|
||||
(babel) in language on input line 60.
|
||||
[11]
|
||||
\openout2 = `chapters/ausblick.aux'.
|
||||
|
||||
(./chapters/ausblick.tex)
|
||||
@ -1458,7 +1495,7 @@ Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
[10
|
||||
[12
|
||||
|
||||
|
||||
|
||||
@ -1475,18 +1512,18 @@ Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
)
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 60.
|
||||
(babel) in language on input line 62.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 60.
|
||||
(babel) in language on input line 62.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 60.
|
||||
(babel) in language on input line 62.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 60.
|
||||
(babel) in language on input line 62.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 60.
|
||||
(babel) in language on input line 62.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 60.
|
||||
[11] (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.bbl
|
||||
(babel) in language on input line 62.
|
||||
[13] (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.bbl
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
@ -1499,7 +1536,7 @@ Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 1.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 1.
|
||||
[12
|
||||
[14
|
||||
|
||||
|
||||
|
||||
@ -1535,36 +1572,36 @@ Underfull \hbox (badness 10000) in paragraph at lines 20--26
|
||||
[]
|
||||
|
||||
)
|
||||
Package atveryend Info: Empty hook `BeforeClearDocument' on input line 75.
|
||||
Package atveryend Info: Empty hook `BeforeClearDocument' on input line 77.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
Package babel Info: Redefining german shorthand "f
|
||||
(babel) in language on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
Package babel Info: Redefining german shorthand "|
|
||||
(babel) in language on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
Package babel Info: Redefining german shorthand "~
|
||||
(babel) in language on input line 75.
|
||||
[13]
|
||||
Package atveryend Info: Empty hook `AfterLastShipout' on input line 75.
|
||||
(babel) in language on input line 77.
|
||||
[15]
|
||||
Package atveryend Info: Empty hook `AfterLastShipout' on input line 77.
|
||||
(/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.aux (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/titlepage/titlepage.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/abstract/abstract.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/einleitung.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/framework.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/prototyp.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/ergebnis.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/ausblick.aux) (/Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/chapters/fazit.aux))
|
||||
Package atveryend Info: Empty hook `AtVeryEndDocument' on input line 75.
|
||||
Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 75.
|
||||
Package atveryend Info: Empty hook `AtVeryEndDocument' on input line 77.
|
||||
Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 77.
|
||||
Package rerunfilecheck Info: File `bachelorabeit_EstherKleinhenz.out' has not changed.
|
||||
(rerunfilecheck) Checksum: 1C7F7EA8FD90A663BA0DCEA09291597A.
|
||||
Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 75.
|
||||
Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 77.
|
||||
)
|
||||
(\end occurred when \ifnum on line 5 was incomplete)
|
||||
Here is how much of TeX's memory you used:
|
||||
26514 strings out of 492970
|
||||
475468 string characters out of 6133939
|
||||
546201 words of memory out of 5000000
|
||||
30138 multiletter control sequences out of 15000+600000
|
||||
26518 strings out of 492970
|
||||
475681 string characters out of 6133939
|
||||
546282 words of memory out of 5000000
|
||||
30139 multiletter control sequences out of 15000+600000
|
||||
553864 words of font info for 60 fonts, out of 8000000 for 9000
|
||||
1348 hyphenation exceptions out of 8191
|
||||
58i,11n,50p,10437b,822s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
|
||||
Output written on /Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.pdf (19 pages).
|
||||
Output written on /Users/Esthi/thesis_ek/doc/bachelorarbeit_EstherKleinhenz/.texpadtmp/bachelorabeit_EstherKleinhenz.pdf (21 pages).
|
||||
|
@ -1,22 +1,23 @@
|
||||
\BOOKMARK [0][-]{figure.caption.1}{Abstract}{}% 1
|
||||
\BOOKMARK [0][-]{chapter.1}{Einleitung}{}% 2
|
||||
\BOOKMARK [1][-]{section.1.1}{Ausgangssituation}{chapter.1}% 3
|
||||
\BOOKMARK [1][-]{section.1.2}{Ziel\040der\040Arbeit}{chapter.1}% 4
|
||||
\BOOKMARK [0][-]{chapter.2}{Framework}{}% 5
|
||||
\BOOKMARK [1][-]{section.2.1}{Django}{chapter.2}% 6
|
||||
\BOOKMARK [1][-]{section.2.2}{Erweiterungen}{chapter.2}% 7
|
||||
\BOOKMARK [2][-]{subsection.2.2.1}{Taggable-Manager}{section.2.2}% 8
|
||||
\BOOKMARK [2][-]{subsection.2.2.2}{Taggable-Manager}{section.2.2}% 9
|
||||
\BOOKMARK [1][-]{section.2.3}{Bootstrap}{chapter.2}% 10
|
||||
\BOOKMARK [0][-]{chapter.3}{Prototyp}{}% 11
|
||||
\BOOKMARK [1][-]{section.3.1}{Organisation}{chapter.3}% 12
|
||||
\BOOKMARK [2][-]{subsection.3.1.1}{Verwaltung\040im\040Administrator-Backend}{section.3.1}% 13
|
||||
\BOOKMARK [2][-]{subsection.3.1.2}{Berechtigung\040der\040User}{section.3.1}% 14
|
||||
\BOOKMARK [1][-]{section.3.2}{Funktion}{chapter.3}% 15
|
||||
\BOOKMARK [2][-]{subsection.3.2.1}{Abonnieren}{section.3.2}% 16
|
||||
\BOOKMARK [2][-]{subsection.3.2.2}{Filtern}{section.3.2}% 17
|
||||
\BOOKMARK [2][-]{subsection.3.2.3}{Benachrichtigung}{section.3.2}% 18
|
||||
\BOOKMARK [0][-]{chapter.4}{Ergebnis}{}% 19
|
||||
\BOOKMARK [1][-]{subsection.4.0.1}{Evaluierung}{chapter.4}% 20
|
||||
\BOOKMARK [0][-]{chapter.5}{Zusammenfassung\040und\040Ausblick}{}% 21
|
||||
\BOOKMARK [0][-]{chapter*.6}{Referenzen}{}% 22
|
||||
\BOOKMARK [0][-]{chapter*.4}{Abbildungsverzeichnis}{}% 2
|
||||
\BOOKMARK [0][-]{chapter.1}{Einleitung}{}% 3
|
||||
\BOOKMARK [1][-]{section.1.1}{Ausgangssituation}{chapter.1}% 4
|
||||
\BOOKMARK [1][-]{section.1.2}{Ziel\040der\040Arbeit}{chapter.1}% 5
|
||||
\BOOKMARK [0][-]{chapter.2}{Framework}{}% 6
|
||||
\BOOKMARK [1][-]{section.2.1}{Django}{chapter.2}% 7
|
||||
\BOOKMARK [2][-]{subsection.2.1.1}{Besonderheiten}{section.2.1}% 8
|
||||
\BOOKMARK [1][-]{section.2.2}{Erweiterungen}{chapter.2}% 9
|
||||
\BOOKMARK [2][-]{subsection.2.2.1}{Taggable-Manager}{section.2.2}% 10
|
||||
\BOOKMARK [1][-]{section.2.3}{Bootstrap}{chapter.2}% 11
|
||||
\BOOKMARK [0][-]{chapter.3}{Prototyp}{}% 12
|
||||
\BOOKMARK [1][-]{section.3.1}{Organisation}{chapter.3}% 13
|
||||
\BOOKMARK [2][-]{subsection.3.1.1}{Verwaltung\040im\040Administrator-Backend}{section.3.1}% 14
|
||||
\BOOKMARK [2][-]{subsection.3.1.2}{Berechtigung\040der\040User}{section.3.1}% 15
|
||||
\BOOKMARK [1][-]{section.3.2}{Funktion}{chapter.3}% 16
|
||||
\BOOKMARK [2][-]{subsection.3.2.1}{Abonnieren}{section.3.2}% 17
|
||||
\BOOKMARK [2][-]{subsection.3.2.2}{Filtern}{section.3.2}% 18
|
||||
\BOOKMARK [2][-]{subsection.3.2.3}{Benachrichtigung}{section.3.2}% 19
|
||||
\BOOKMARK [0][-]{chapter.4}{Ergebnis}{}% 20
|
||||
\BOOKMARK [1][-]{subsection.4.0.1}{Evaluierung}{chapter.4}% 21
|
||||
\BOOKMARK [0][-]{chapter.5}{Zusammenfassung\040und\040Ausblick}{}% 22
|
||||
\BOOKMARK [0][-]{chapter*.7}{Referenzen}{}% 23
|
||||
|
Binary file not shown.
@ -1,24 +1,25 @@
|
||||
\babel@toc {german}{}
|
||||
\babel@toc {german}{}
|
||||
\contentsline {chapter}{Abstract}{i}{figure.caption.1}
|
||||
\contentsline {chapter}{\numberline {1}Einleitung}{1}{chapter.1}
|
||||
\contentsline {section}{\numberline {1.1}Ausgangssituation}{1}{section.1.1}
|
||||
\contentsline {section}{\numberline {1.2}Ziel der Arbeit}{1}{section.1.2}
|
||||
\contentsline {chapter}{\numberline {2}Framework}{3}{chapter.2}
|
||||
\contentsline {section}{\numberline {2.1}Django}{3}{section.2.1}
|
||||
\contentsline {section}{\numberline {2.2}Erweiterungen}{5}{section.2.2}
|
||||
\contentsline {subsection}{\numberline {2.2.1}Taggable-Manager}{5}{subsection.2.2.1}
|
||||
\contentsline {subsection}{\numberline {2.2.2}Taggable-Manager}{5}{subsection.2.2.2}
|
||||
\contentsline {section}{\numberline {2.3}Bootstrap}{5}{section.2.3}
|
||||
\contentsline {chapter}{\numberline {3}Prototyp}{7}{chapter.3}
|
||||
\contentsline {section}{\numberline {3.1}Organisation}{7}{section.3.1}
|
||||
\contentsline {subsection}{\numberline {3.1.1}Verwaltung im Administrator-Backend}{7}{subsection.3.1.1}
|
||||
\contentsline {subsection}{\numberline {3.1.2}Berechtigung der User}{7}{subsection.3.1.2}
|
||||
\contentsline {section}{\numberline {3.2}Funktion}{7}{section.3.2}
|
||||
\contentsline {subsection}{\numberline {3.2.1}Abonnieren}{7}{subsection.3.2.1}
|
||||
\contentsline {subsection}{\numberline {3.2.2}Filtern}{7}{subsection.3.2.2}
|
||||
\contentsline {subsection}{\numberline {3.2.3}Benachrichtigung}{7}{subsection.3.2.3}
|
||||
\contentsline {chapter}{\numberline {4}Ergebnis}{9}{chapter.4}
|
||||
\contentsline {subsection}{\numberline {4.0.1}Evaluierung}{9}{subsection.4.0.1}
|
||||
\contentsline {chapter}{\numberline {5}Zusammenfassung und Ausblick}{11}{chapter.5}
|
||||
\contentsline {chapter}{Referenzen}{13}{chapter*.6}
|
||||
\contentsline {chapter}{Abbildungsverzeichnis}{1}{chapter*.4}
|
||||
\contentsline {chapter}{\numberline {1}Einleitung}{3}{chapter.1}
|
||||
\contentsline {section}{\numberline {1.1}Ausgangssituation}{3}{section.1.1}
|
||||
\contentsline {section}{\numberline {1.2}Ziel der Arbeit}{3}{section.1.2}
|
||||
\contentsline {chapter}{\numberline {2}Framework}{5}{chapter.2}
|
||||
\contentsline {section}{\numberline {2.1}Django}{5}{section.2.1}
|
||||
\contentsline {subsection}{\numberline {2.1.1}Besonderheiten}{6}{subsection.2.1.1}
|
||||
\contentsline {section}{\numberline {2.2}Erweiterungen}{7}{section.2.2}
|
||||
\contentsline {subsection}{\numberline {2.2.1}Taggable-Manager}{7}{subsection.2.2.1}
|
||||
\contentsline {section}{\numberline {2.3}Bootstrap}{7}{section.2.3}
|
||||
\contentsline {chapter}{\numberline {3}Prototyp}{9}{chapter.3}
|
||||
\contentsline {section}{\numberline {3.1}Organisation}{9}{section.3.1}
|
||||
\contentsline {subsection}{\numberline {3.1.1}Verwaltung im Administrator-Backend}{9}{subsection.3.1.1}
|
||||
\contentsline {subsection}{\numberline {3.1.2}Berechtigung der User}{9}{subsection.3.1.2}
|
||||
\contentsline {section}{\numberline {3.2}Funktion}{9}{section.3.2}
|
||||
\contentsline {subsection}{\numberline {3.2.1}Abonnieren}{9}{subsection.3.2.1}
|
||||
\contentsline {subsection}{\numberline {3.2.2}Filtern}{9}{subsection.3.2.2}
|
||||
\contentsline {subsection}{\numberline {3.2.3}Benachrichtigung}{9}{subsection.3.2.3}
|
||||
\contentsline {chapter}{\numberline {4}Ergebnis}{11}{chapter.4}
|
||||
\contentsline {subsection}{\numberline {4.0.1}Evaluierung}{11}{subsection.4.0.1}
|
||||
\contentsline {chapter}{\numberline {5}Zusammenfassung und Ausblick}{13}{chapter.5}
|
||||
\contentsline {chapter}{Referenzen}{15}{chapter*.7}
|
||||
|
@ -1,7 +1,7 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@setckpt{chapters/ausblick}{
|
||||
\setcounter{page}{10}
|
||||
\setcounter{page}{12}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -28,7 +28,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{20}
|
||||
\setcounter{bookmark@seq@number}{21}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
@ -1,12 +1,12 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {1}Einleitung}{1}{chapter.1}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {1}Einleitung}{3}{chapter.1}}
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.1}Ausgangssituation}{1}{section.1.1}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.2}Ziel der Arbeit}{1}{section.1.2}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.1}Ausgangssituation}{3}{section.1.1}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {1.2}Ziel der Arbeit}{3}{section.1.2}}
|
||||
\@setckpt{chapters/einleitung}{
|
||||
\setcounter{page}{3}
|
||||
\setcounter{page}{5}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -33,7 +33,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{4}
|
||||
\setcounter{bookmark@seq@number}{5}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
@ -1,12 +1,12 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {4}Ergebnis}{9}{chapter.4}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {4}Ergebnis}{11}{chapter.4}}
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:ergebnis}{{4}{9}{Ergebnis}{chapter.4}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {4.0.1}Evaluierung}{9}{subsection.4.0.1}}
|
||||
\newlabel{ch:ergebnis}{{4}{11}{Ergebnis}{chapter.4}{}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {4.0.1}Evaluierung}{11}{subsection.4.0.1}}
|
||||
\@setckpt{chapters/ergebnis}{
|
||||
\setcounter{page}{10}
|
||||
\setcounter{page}{12}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -33,7 +33,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{20}
|
||||
\setcounter{bookmark@seq@number}{21}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
@ -1,11 +1,11 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {5}Zusammenfassung und Ausblick}{11}{chapter.5}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {5}Zusammenfassung und Ausblick}{13}{chapter.5}}
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:zusammenfassung}{{5}{11}{Zusammenfassung und Ausblick}{chapter.5}{}}
|
||||
\newlabel{ch:zusammenfassung}{{5}{13}{Zusammenfassung und Ausblick}{chapter.5}{}}
|
||||
\@setckpt{chapters/fazit}{
|
||||
\setcounter{page}{12}
|
||||
\setcounter{page}{14}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -32,7 +32,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{21}
|
||||
\setcounter{bookmark@seq@number}{22}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
@ -1,18 +1,18 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {2}Framework}{3}{chapter.2}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {2}Framework}{5}{chapter.2}}
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:framework}{{2}{3}{Framework}{chapter.2}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.1}Django}{3}{section.2.1}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Vereinfachter MVP\relax }}{3}{figure.caption.4}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Request-Response-Kreislauf des Django Frameworks\relax }}{4}{figure.caption.5}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Erweiterungen}{5}{section.2.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Taggable-Manager}{5}{subsection.2.2.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.2}Taggable-Manager}{5}{subsection.2.2.2}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.3}Bootstrap}{5}{section.2.3}}
|
||||
\newlabel{ch:framework}{{2}{5}{Framework}{chapter.2}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.1}Django}{5}{section.2.1}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.1}{\ignorespaces Vereinfachter MVP\relax }}{5}{figure.caption.5}}
|
||||
\@writefile{lof}{\contentsline {figure}{\numberline {2.2}{\ignorespaces Request-Response-Kreislauf des Django Frameworks\relax }}{6}{figure.caption.6}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}Besonderheiten}{6}{subsection.2.1.1}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Erweiterungen}{7}{section.2.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Taggable-Manager}{7}{subsection.2.2.1}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {2.3}Bootstrap}{7}{section.2.3}}
|
||||
\@setckpt{chapters/framework}{
|
||||
\setcounter{page}{6}
|
||||
\setcounter{page}{8}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -39,7 +39,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{10}
|
||||
\setcounter{bookmark@seq@number}{11}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
@ -1,18 +1,18 @@
|
||||
\relax
|
||||
\providecommand\hyper@newdestlabel[2]{}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {3}Prototyp}{7}{chapter.3}}
|
||||
\@writefile{toc}{\contentsline {chapter}{\numberline {3}Prototyp}{9}{chapter.3}}
|
||||
\@writefile{lof}{\addvspace {10\p@ }}
|
||||
\@writefile{lot}{\addvspace {10\p@ }}
|
||||
\newlabel{ch:prototyp}{{3}{7}{Prototyp}{chapter.3}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.1}Organisation}{7}{section.3.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.1}Verwaltung im Administrator-Backend}{7}{subsection.3.1.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.2}Berechtigung der User}{7}{subsection.3.1.2}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.2}Funktion}{7}{section.3.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.1}Abonnieren}{7}{subsection.3.2.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.2}Filtern}{7}{subsection.3.2.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.3}Benachrichtigung}{7}{subsection.3.2.3}}
|
||||
\newlabel{ch:prototyp}{{3}{9}{Prototyp}{chapter.3}{}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.1}Organisation}{9}{section.3.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.1}Verwaltung im Administrator-Backend}{9}{subsection.3.1.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1.2}Berechtigung der User}{9}{subsection.3.1.2}}
|
||||
\@writefile{toc}{\contentsline {section}{\numberline {3.2}Funktion}{9}{section.3.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.1}Abonnieren}{9}{subsection.3.2.1}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.2}Filtern}{9}{subsection.3.2.2}}
|
||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2.3}Benachrichtigung}{9}{subsection.3.2.3}}
|
||||
\@setckpt{chapters/prototyp}{
|
||||
\setcounter{page}{8}
|
||||
\setcounter{page}{10}
|
||||
\setcounter{equation}{0}
|
||||
\setcounter{enumi}{0}
|
||||
\setcounter{enumii}{0}
|
||||
@ -39,7 +39,7 @@
|
||||
\setcounter{Item}{0}
|
||||
\setcounter{Hfootnote}{0}
|
||||
\setcounter{Hy@AnnotLevel}{0}
|
||||
\setcounter{bookmark@seq@number}{18}
|
||||
\setcounter{bookmark@seq@number}{19}
|
||||
\setcounter{NAT@ctr}{0}
|
||||
\setcounter{lstlisting}{0}
|
||||
\setcounter{section@level}{0}
|
||||
|
Binary file not shown.
@ -49,6 +49,8 @@
|
||||
\tableofcontents
|
||||
\cleardoublepage
|
||||
\vspace{3cm}
|
||||
\listoffigures
|
||||
\vspace{3cm}
|
||||
%------------------------------------------------------------------------------
|
||||
%body of thesis comes here
|
||||
\pagenumbering{arabic}
|
||||
|
@ -12,7 +12,7 @@ Django ist ein Web-Framework, das auf einer Model-View-Presenter (MVP) Architekt
|
||||
\hfill
|
||||
\end{figure}
|
||||
|
||||
Der Prozess vom Anfragen der URL über den Server, bis hin zur fertig gerenderten Website kann wie folgt vereinfacht darstellen. Der User gibt eine URL im Browser ein und sendet sie an den Web-Server. Dieser leitet den Request an das Django-Backend weiter. Da das Framework über eine explizite Zuweisung der verschiedenen Seiten verfügt, iteriert der urlresolver über die vorhandene URL-Struktur im Code (url.py). Gibt es eine Übereinstimmung, wird die damit verknüpfte Funktion in der View (view.py) aufgerufen. Hier ist die gesamte Logik der Website lokalisiert. Wie bereits erwähnt, ist es möglich unter Anderem auf die Datenbank der Applikation zuzugreifen und Eingaben des Users über eine Form zu verarbeiten. Nachdem werden die Informationen der View an das Template weitergereicht. Es handelt sich dabei um eine einfache HTML-Seite in der der strukturelle Aufbau im Frontend festgelegt wird. Die Informationen der View können hier zwischen doppelt-geschweiften Klammern eingebunden werden und, wenn nötig, mit einfachen Python-Befehlen anpassen. Nun kann das Template einen Response an den Web-Server schicken und die fertige Seite wird beim Klienten im Browser gerendert (vgl. Abbildung 2.1).
|
||||
Der Prozess vom Anfragen der URL über den Server, bis hin zur fertig gerenderten Website kann wie folgt vereinfacht darstellen. Der User gibt eine URL im Browser ein und sendet sie an den Web-Server. Das Interface WSGI am Web-Server leitet den Request zum passenden Objekt einer Applikation weiter. Da das Framework über eine explizite Zuweisung der verschiedenen Seiten verfügt, iteriert der urlresolver über die vorhandene URL-Struktur im Code (url.py). Gibt es eine Übereinstimmung, wird die damit verknüpfte Funktion in der View (view.py) aufgerufen. Hier ist die gesamte Logik der Website lokalisiert. Wie bereits erwähnt, ist es möglich unter Anderem auf die Datenbank der Applikation zuzugreifen und Eingaben des Users über eine Form zu verarbeiten. Nachdem werden die Informationen der View an das Template weitergereicht. Es handelt sich dabei um eine einfache HTML-Seite in der der strukturelle Aufbau im Frontend festgelegt wird. Die Informationen der View können hier zwischen doppelt-geschweiften Klammern eingebunden werden und, wenn nötig, mit einfachen Python-Befehlen anpassen. Nun kann das Template einen Response an den Web-Server schicken und die fertige Seite wird beim Klienten im Browser gerendert (vgl. Abbildung 2.1).
|
||||
|
||||
\begin{figure}[!h]
|
||||
\centering
|
||||
@ -21,13 +21,37 @@ Der Prozess vom Anfragen der URL über den Server, bis hin zur fertig gerenderte
|
||||
\hfill
|
||||
\end{figure}
|
||||
|
||||
Sicherheit
|
||||
\subsection {Besonderheiten}
|
||||
Das Django-Framework bringt einige Besonderheiten mit sich, die beim implementiern des Prototypen von Bedeutung sind. Diese werden im Folgenden beschrieben.
|
||||
Die Administratoroberfläche ist eines der hilfreichsten Werkzeugen des gesamten Frameworks. Es stellt die Metadaten der Modelle aus dem Code visuell dar. Verifizierte Benutzer können die Daten nicht nur schnell erfassen, sondern diese auch editieren und verwalten. Das Recht, das Admin-Backend uneingeschränkt zu benutzen, ist dem sogenannten superuser vorenthalten. Dieser kann beim erstmaligen zuweisen nur über die Kommandozeile eingerichtet werden. Ist bereits ein superuser vorhanden, kann dieser im Admin-Backend weiteren Benutzern den gleichen Handlungsfreiraum einräumen. Zudem gibt es noch weitere Stufen der Zugangsberechtigungen, Staff- und Active-Status, die für eine breitere Gruppe von Benutzern geeignet ist.
|
||||
Um die gestaffelten Zugangsberechtigungen auch auf der Website umsetzen zu können, stellt Django ... zur Verfügung.
|
||||
Natürlich lassen sich die Dekorator auch für andere Zwecke vor Funktionen paltzieren.
|
||||
Sicherheit
|
||||
|
||||
Die Django-Administratoroberfläche ist eines der hilfreichsten Oberflächen des gesamten Frameworks. Es stellt die Metadaten der Modelle aus dem Code visuell dar. Verifizierte Benutzer können die Daten nicht nur schnell erfassen, sondern diese auch editieren und verwalten. Die Rechte, das Admin-Backend benutzen zu dürfen kann man im Terminal beim erstellen der Datenbank festlegen. Ist man "superuser" kann man diese Rechte auch an weiter User übertragen.
|
||||
|
||||
\section{Erweiterungen}
|
||||
Durch das hohe Ansehen, dass Django in der Branche genie"st ist der Pool an Erweiterungen gro"s.
|
||||
|
||||
pip?
|
||||
|
||||
allg Erweiterungen und dann genauer Taggable Manager
|
||||
\subsection {Taggable-Manager}
|
||||
\subsection {Taggable-Manager}
|
||||
Django-taggit ist eine Erweiterung von Alex Gaynor, einem Entwickler aus Washingtion DC. Das Add-on ermöglicht das Verwenden von Tags die automatisch mit einem eindeutigen Slug versehen werden. Um dieses zu installieren wird der folgende Befehl in die Kommandozeile eingefügt:
|
||||
\\
|
||||
\noindent\hspace*{10mm}%
|
||||
\$ pip install django-taggit
|
||||
\\
|
||||
Im model.py wird das Feld tag neu erstellt und als Taggable Manager definiert.
|
||||
Au"serdem muss taggit in der settings.py Datei unter INSTALLED\_APPS ergänzt werden. Um dem Programm zu sagen, dass nun eine neue Liste der Datenbank hinzugefügt werden muss, werden folgende Befehle in die Kommandozeile eingefügt:
|
||||
\\
|
||||
\noindent\hspace*{10mm}%
|
||||
\$ python3 manage.py makemigrations \\
|
||||
\noindent\hspace*{10mm}%
|
||||
\$ python3 manage.py migrate
|
||||
\\
|
||||
Im Admin-Backend kann nun geprüft werden, ob das neue Feld in die Datenbank integriert wurde. Neue Tags können in das Textfeld eingetragen werden. Der Parser verarbeitet jedes Wort, dass durch ein Komma oder ein Leerzeichen getrennt ist als ein Tag. Soll ein dieses jedoch aus mehreren Wörtern bestehen so müssen diese zwischen Anführungszeichen stehen. Standardmäßig unterscheidet der Taggable Manager zwischen Groß- und Kleinschreibung, ist also case sensitive. Ändern kann man das, indem der Boolean TAGGIT\_CASE\_INSENSITIVE in der settings.py auf True gestellt wird.
|
||||
|
||||
|
||||
\section{Bootstrap}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user