页面匹配查询不存在。与第二个蛞蝓
Posted
技术标签:
【中文标题】页面匹配查询不存在。与第二个蛞蝓【英文标题】:Pages matching query does not exist. With second slug 【发布时间】:2022-01-22 06:27:06 【问题描述】:Views.py
def PortfolioElementView(request, portfolio_text):
q = PortfolioElement.objects.filter(slug = portfolio_text)
if q.exists():
q = q.first()
else:
return HttpResponse("Go home")
name = Pages.objects.get(name = q)
portfolio = get_object_or_404(PortfolioElement, id=id)
menu = Menu.objects.all()
photos = PortfolioImages.objects.filter(portfolio=portfolio)
context =
'element': q,
'portfolio': portfolio,
'photos': photos,
'menu': menu,
return render(request, 'core/portfolio_element.html', context)
Models.py
class Pages(models.Model):
name = models.CharField(max_length=100)
slug = models.SlugField(max_length=255, unique=True, blank=True)
content = RichTextField(blank=True, null=True)
class PortfolioElement(models.Model):
type = models.CharField(max_length=15)
name = models.CharField(max_length=100)
slug = models.SlugField(max_length=100, blank=True, unique=True)
def slug_generator(sender, instance, *args, **kwargs):
if not instance.slug:
instance.slug = unique_slug_generator(instance)
pre_save.connect(slug_generator, sender=Pages)
pre_save.connect(slug_generator, sender=PortfolioElement)
Urls.py
urlpatterns = [
path('admin/', admin.site.urls),
path('<slug:slug_text>/', PagesView),
path('', MainPageView),
path('portfolio/<slug:portfolio_text>/', PortfolioElementView),
]
为什么它不起作用? :/
错误 不存在于 /portfolio/projekt-strony-xyz/ 页面匹配查询不存在。
编辑
我添加了 Pages 模型。
看起来您的帖子主要是代码;请添加更多细节。 看起来您的帖子主要是代码;请添加更多细节。 看起来您的帖子主要是代码;请添加更多详细信息。
【问题讨论】:
你能分享你的Pages
模型吗?看来这就是问题所在。
@WillemVanOnsem 我更新了 models.py
【参考方案1】:
您正在传递查询集,您需要传递特定字段。
name = Pages.objects.get(name=q.name)
【讨论】:
以上是关于页面匹配查询不存在。与第二个蛞蝓的主要内容,如果未能解决你的问题,请参考以下文章