2009-06-24 13 views
9

Obecnie pracuję nad projektem Blog wykorzystującym model Post, który będzie używany przez wielu autorów.Django: Najlepsza praktyka implementacji CRUD poza kontrib.admin

Chcę utworzyć interfejs administratora/panelu sterowania, w którym każdy autor posta może wyświetlić listę postów autora (tak, aby nie widział postu utworzonego przez innych autorów), edytować i wiele Usuń ich.

Valid use case for django admin? powiedział, że:

admin Django nie nadaje się do indywidualnych profili użytkowników, każdy użytkownik będzie mógł zobaczyć i edytować wszystkie inne profile użytkowników. Jest to bardziej odpowiednie dla administratora, który musi zarządzać wszystkimi użytkownikami naraz.

Oznacza to, że powinien zostać utworzony nowy system CRUD - poza interfejsem contrib.admin. Pytanie brzmi, czy istnieje jakakolwiek technika/sposób implementacji CRUD poza systemem contrib.admin? lub, co jest potrzebne do nauki/użytkowania? jak mogę go ładnie zaimplementować (minimalny wysiłek)?

góry dzięki :)

Odpowiedz

9

Jest to dość łatwe do zrobienia poprzez ulepszenie administratora Django. Jeśli jest to jedyny powód do porzucenia programu contrib.admin, możesz chcieć googlować w poszukiwaniu ostatnich artykułów na temat dostosowywania administratora przed pójściem do przodu i wyrzucenia dziecka z kąpielą.

znalazłem kilka prawdopodobnych kandydatów:

i ogólnie: http://www.ibm.com/developerworks/opensource/library/os-django-admin/index.html

(zauważ, że tam był stary technika stosowana a wątki lokalne Nie jest to już konieczne, ponieważ istnieją lepsze sposoby na zrobienie tego. Wzmianka o tym jest pewnym znakiem cle jest nieaktualny.)

+0

Dzięki Andy! Właśnie tego szukam :) Zarówno Ty, jak i Harper dostarczyliście mi doskonałe odpowiedzi :) Postaram się wtedy zagrać z pytaniem administratora. Ostatnią rzeczą, która mnie teraz zdziwiła, jest wielokrotne usuwanie w CRUDie administratora. Ale myślę, że to będzie inna historia, heheh. Dzięki! –

+0

Z Django 1.1 nadchodzi wiele operacji usuwania i innych operacji wsadowych –

10

Będziesz chciał spojrzeć na Django generic create/update forms. To nie jest administrator, ale jest dość łatwy do wdrożenia.

+0

dziękuję! Będę eksperymentować z tym :) –

0

W Django 1.3, "ogólne widoki" (formularze CRUD) zostały zmienione tak, aby były oparte na klasach. Zobacz here.

Powiązane problemy