2012-10-25 2 views
0

나는 종업원의 근무 시간을 저장하고 표시하는 장고 응용 프로그램을 작성하고 있습니다.장고 목록의 목록 관리

문제는, 예를 들어 소아과 의사가 아픈 아이들과 건강한 아이들을 위해 별도로 두 종류의 근무 시간을 가지고 있다는 것입니다.

그래서 나는 HTML 테이블을 사용하여 각 직원의 시간을 표시하는 것이 좋습니다. 내 생각은 Employee에 ForeignKey를 사용하여 테이블의 각 행을 나타내는 "ListField"를 갖는 것이 었습니다. 그런 식으로, 관리자는 같은 목록을 만들 수 있습니다

['', 'Sick Children', 'Healthy Children'], 
['Monday', '8-12', '12-14'], 
['Friday', '12-15'] 

을 그리고 그것은 꽤 좋은 보일 것이다 HTML 테이블로, 웹 사이트에 나타납니다.

문제는 웹 사이트 관리자가 쉽고 직관적으로 보이기를 바랍니다. 그래서 관리자 패널에 직원의 인라인으로 테이블 행을 유지하고 싶습니다. 그래서, 내가 만든 모델 :

class TableRow(models.Model): 
    employee = models.ForeignKey(Employee) 

class TableCell(models.Model): 
    content = models.CharField(max_length=20) 
    row = models.ForeignKey(TableRow) 

그리고 시도 물건 같은 : (I 예상대로,하지만 시도 다치게하지 않았다) 작동하지 않습니다

class TableCellInline(admin.TabularInline): 
    model = TableCell 

class TableRowInline(admin.TabularInline): 
    model = TableRow 

class EmployeeAdmin(admin.ModelAdmin): 
    inlines = [TableRowInline] 

admin.site.register(Employee, EmployeeAdmin) 
admin.site.register(TableRow, TableRowAdmin) 

. 관리자 패널에는 직원을 추가/편집 할 때 테이블 행을 추가하는 옵션이 표시되지만 셀을 행에 추가하는 옵션은 표시되지 않습니다.

직원을 편집/추가하는 동안 행을 추가 할 수있는 방법이 있습니까? 아니면 완전히 다른 방법으로 문제를 해결할 수 있을까요?

답변