Python 无法分析余数:';(歌曲)及"x27,;从';playlist.songs.add(歌曲)和#x27;

Python 无法分析余数:';(歌曲)及"x27,;从';playlist.songs.add(歌曲)和#x27;,python,html,django,button,Python,Html,Django,Button,以下是我的播放列表和歌曲型号: models.py 这是我的模板: <div class="dropdown"> <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Add to playlist<span class="caret"></span></button> <ul class="

以下是我的播放列表和歌曲型号:

models.py 这是我的模板:

    <div class="dropdown">
    <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Add to playlist<span class="caret"></span></button>
    <ul class="dropdown-menu">
    {% for playlist in all_playlists %}
    <li><button onclick="{{playlist.songs.add(song)}}">{{playlist.name}}</button></li>
    {% endfor %}
    </ul>
</div>

非常感谢您的帮助。

这是解决方案之一

  • 创建一个django,其中包含一个用于多选的适当字段。使用
    POST
    方法将其插入表单标记中的模板中

  • 创建url和视图以处理此
    POST
    请求。您可以编写代码将歌曲添加到此视图中的播放列表。然后重新渲染模板


  • onclick事件编写的代码将在客户端调用,您无法在浏览器中执行python。您可以编写javascript向服务器发送HTTP请求,将歌曲添加到播放列表中,也可以使用django表单。如何在django中执行此操作?
        <div class="dropdown">
        <button class="btn btn-primary dropdown-toggle" type="button" data-toggle="dropdown">Add to playlist<span class="caret"></span></button>
        <ul class="dropdown-menu">
        {% for playlist in all_playlists %}
        <li><button onclick="{{playlist.songs.add(song)}}">{{playlist.name}}</button></li>
        {% endfor %}
        </ul>
    </div>
    
    In [1]: from music.models import Song, Playlist
    
    In [2]: s = Song.objects.get(pk=2)
    
    In [3]: p1 = Playlist.objects.get(pk=2)
    
    In [4]: p1.songs.add(s)
    
    In [5]: p1.songs.all()
    Out[5]: [<Song: Shape of you>]