Django - 内联(没有外键)

2 投票
1 回答
4111 浏览
提问于 2025-04-17 08:27

我正在尝试实现 InlineModels,但是遇到了错误信息。你能帮我吗?谢谢。

myproject.api.models

from django.db import models
from django.contrib.auth.models import User
from myproject.song.models import Album, Song, Artist

class UserLibrary(models.Model):
    user = models.ForeignKey(User)

myproject.api.admin.py

from django.contrib import admin
from myproject.song.models import Song, Album, Artist, Music
from myproject.api.models import UserLibrary

class SongInline(admin.TabularInline):
    model = Song
class UserLibraryAdmin(admin.ModelAdmin):
    search_fields = ['user']
    inlines = [
        SongInline,
        ]
admin.site.register(UserLibrary, UserLibraryAdmin)

这是我的错误追踪信息:

 Exception at /admin/api/userlibrary/add/
<class 'myproject.song.models.Song'> has no ForeignKey to <class 'api.models.UserLibrary'>

1 个回答

3

你建立的关系搞错了——你的 Song 模型应该和 UserLibrary 模型有一个外键关系,而不是反过来。除此之外,其他的看起来都没问题。

撰写回答