본문으로 바로가기

admin panel과 실제 view 사이를 오고가기 위해 필요합니다.

 

@admin.register(models.Room)
class RoomAdmin(admin.ModelAdmin):

    inlines = (PhotoInline,)

    fieldsets = (
    ... 중략
class Room(core_models.TimeStampedModel):

    """ Room Model Definitions """

    name = models.CharField(max_length=140)
    description = models.TextField()
	... 중략

    def get_absolute_url(self):
       return f"/rooms/{self.pk}"

 

다음과 같이 간단히 작성된 admin과 그에 연결된 모델이 있다면, 해당 모델에 get_absoulte_url 함수를 생성합니다.

 

이제 어드민 패널에서 VIEW ON SITE 버튼이 뜬 것을 볼 수 있습니다. 클릭하면 return한 경로로 이동합니다.

 

namespace와 name을 이용해서 다음과 같이 작성해줘도 같은 효과를 얻을 수 있습니다.

arguments를 주는 것을 잊지 맙시다.

def get_absolute_url(self):
    return reverse("rooms:detail", kwargs={"pk": self.pk})

 

 

 


darren, dev blog
블로그 이미지 DarrenKwonDev 님의 블로그
VISITOR 오늘 / 전체