Napisałem klasę widoku, która ma wiele widoków @ view_config z predykatami ustawionymi dla pojedynczej trasy. Następnie mam podklasę, która nadpisuje kilka podfunkcji, co wpływa na sposób, w jaki widok jest tworzony. Poniżej jest coś podobnego, ale z uproszczonym kodem.Dziedziczenie klasy widoku piramidy z widokami @view_defaults i @view_config
Podczas odwiedzania view_a route wszystko działa poprawnie. Podczas odwiedzania trasy view_b pokazuje "404 Not Found" Nie można znaleźć zasobu ".
Wygląda na to, że @view_configs nie są "dziedziczone" i połączone z nowym @view_default. Czy istnieje prosty sposób, aby to naprawić, czy muszę przełączyć się na ręczne wykonanie config.add_view()
?
@view_defaults(route_name='view_a', renderer='templates/views.mak')
class View_A(object):
def message(self):
return 'This is view a'
@view_config(request_method='GET')
def get(self):
return {'message': self.message()}
@view_defaults(route_name='view_b')
class View_B(View_A):
def message(self):
return 'This is view b'
Człowieku, jak to nie ma więcej głosów. Jeszcze jeden, przynajmniej :) –