Слаг не рендерит детальную страницу в Django 2.0

Я отвечаю на вопрос: Как получить значение переменной, учитывая ее имя в строке? , которая закрыта как дубликат со ссылкой на этот вопрос.

Если рассматриваемые переменные являются частью объекта (например, части класса), то некоторые полезные функции для достижения именно этого: hasattr, getattr и setattr.

Так, например, вы можете иметь:

class Variables(object):
    def __init__(self):
        self.foo = "initial_variable"
    def create_new_var(self,name,value):
        setattr(self,name,value)
    def get_var(self,name):
        if hasattr(self,name):
            return getattr(self,name)
        else:
            raise("Class does not have a variable named: "+name)

Тогда вы можете сделать:

v = Variables()
v.get_var("foo")

"initial_variable"

v.create_new_var(v.foo,"is actually not initial")
v.initial_variable

"на самом деле не является начальным"

blockquote>

0
задан Curtis Banks 23 March 2019 в 20:58
поделиться

1 ответ

попробуйте изменить ваш views.py на

def post_detail(request, year, month, day, slug):
post = get_object_or_404(Post, slug=slug, 
                            status='published',
                            publish__year=year,
                            publish__month=month,
                            publish__day=day)
return render(request, 'snippets/detail.html', {'post':post})
0
ответ дан coderasha 23 March 2019 в 20:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: