首页 > 编程语言 >django rest django.core.exceptions.ImproperlyConfigured: Could not resolve URL for hyperlinked relat

django rest django.core.exceptions.ImproperlyConfigured: Could not resolve URL for hyperlinked relat

时间:2024-05-20 16:19:53浏览次数:23  
标签:album core hyperlinked serializers name list django path view

使用:HyperlinkedRelatedField 报错信息

django.core.exceptions.ImproperlyConfigured: Could not resolve URL for hyperlinked relationship using view name "fk_table:album_list". 
You may have failed to include the related model in your API, or incorrectly configured the `lookup_field` attribute on this field.

原因:

因为我配置显示数据的URL导致的

# url
urlpatterns = [
    path('album/', include([
        path('list/', AlbumList.as_view(), name='album_list'),
    ])),
]

# serializers
class AlbumSerializer(serializers.ModelSerializer):
    tracks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='fk_table:album_list') # album_list配置有问题,没有pk的识别
    class Meta:
        model = Album
        fields = ['album_name', 'artist', 'tracks']

解决方法

# url 
urlpatterns = [
    path('album/', include([
        path('list/', AlbumList.as_view(), name='album_list'),
        path('edit/<int:pk>/', AlbumList.as_view(), name='album_edit'),
    ])),
]

# serializers
class AlbumSerializer(serializers.ModelSerializer):
    tracks = serializers.HyperlinkedRelatedField(many=True, read_only=True, view_name='fk_table:album_edit')
    class Meta:
        model = Album
        fields = ['album_name', 'artist', 'tracks']

 

标签:album,core,hyperlinked,serializers,name,list,django,path,view
From: https://www.cnblogs.com/ygbh/p/18202247

相关文章

  • .net6中使用EF core多个上下文迁移方式
    正常上下文在复制一个一模一样的上下文appsettings.json添加两个数据库连接字符串 Program.cs里边一样添加两个 控制台迁移命令必须加上-Context后边跟的是我们上下文的名称Add-MigrationMyMigration-ContextMYDBContext222保存到数据库命令一样Update-Data......
  • Entity Framwork Core 数据注解(Data Annotations)使用方法
    在EntityFrameworkCore中,数据注解(DataAnnotations)是通过在实体类的属性上使用特性(Attributes)来配置实体与数据库之间的映射关系的一种方式。这种方式比较直观且易于理解,特别适用于简单的配置需求。下面是一些使用数据注解配置实体的C#示例:1.配置主键publicclassBlog{......
  • django添加路由访问helloworld
    一、应用层面路由配置:新建urls.py文件二、项目层路由配置 三、把应用添加到项目配置文件四、运行项目  运行成功......
  • .NetCore工具
    1、更新GeneralUpdate:Myshiplooksold,whocanhelpmeupgradeit.(gitee.com)GeneralUpdate是一款基于.NETStandard2.0开源自动升级组件。运行环境:.NET7、.NETMAUI、Visualstudio2022(Preview)功能是否支持备注断点续传支持单次更新失败时,下次一次启动时......
  • 创建django项目目录介绍
    项目层次:创建django项目自动生成的一些.py的目录文件命令运行检查是否创建成功访问http://127.0.0.1:8000/应用层次:创建应用:pythonmanage.pystartappblog项目管理文件manage.py,创建应用的命令startapp,应用名blog 应用目录介绍: ......
  • Django框架指南
    Django框架指南入门安装Django系统安装python后,使用pip安装Djangopipinstalldjango创建一个Django项目在命令行中,使用以下命令创建一个新的Django项目:django-adminstartprojectmyproject这将创建一个名为myproject的文件夹,其中包含了一个Django项目的基本结构。创建......
  • 深入Django项目实战与最佳实践
    title:深入Django项目实战与最佳实践date:2024/5/1921:41:38updated:2024/5/1921:41:38categories:后端开发tags:Django基础项目实战最佳实践数据库配置静态文件部署高级特性第一章:Django项目架构与设计原则Django框架概述Django是一个高级的PythonW......
  • Django markdown前端页面渲染
    提取目录(方式一)importmarkdownfrommarkdown.extensions.tocimportTocExtensiondefcontent(request,content_id):content_id=int(content_id)content=Content.objects.get(id=content_id)md=markdown.Markdown(extensions=['markdown.extension......
  • ASP.NET Core应用程序7:使用视图组件
      视图组件是类,为支持分部视图或者在父视图中注入少量Html或Json数据提供了应用程序逻辑。1准备工作  Models文件夹中添加City.cs类和CitiesData类,为CitiesData添加服务。publicclassCity{publicstringName{get;set;}publicstringCo......
  • 在 ASP.NET Core 中使用托管服务实现后台任务
    在ASP.NETCore中,后台任务作为托管服务实现。托管服务是一个类,具有实现 IHostedService 接口的后台任务逻辑。本文提供了三个托管服务示例:在计时器上运行的后台任务。激活有作用域的服务的托管服务。有作用域的服务可使用依赖项注入(DI)。按顺序运行的已排队后台任务......