python - Django 模型不获取不同的 URL
问题描述
我正在尝试使用 python django 作为后端创建一个音乐网站。我需要为不同的歌曲获取不同的 spotify url,我推荐使用我的 Django 管理面板。我面临的问题是我为第二首歌曲定义 url 的那一刻,而我的歌曲的连续歌曲获取我之前为第一首歌曲定义的相同 url。这样,我的每首歌曲对话框都会播放与定义的第一首歌曲相同的歌曲。
这是我为 My Song 定义的模型:
from django.db import models
class Songs(models.Model):
name = models.CharField(max_length = 250)
image = models.ImageField(upload_to = 'media')
class Spot(models.Model):
lnk = models.URLField()
以下是我在 HTML 文件中为查看模型所做的更改:
{% for plays in play.all %}
<div class="col-md-3 content-grid">
<a class="play-icon popup-with-zoom-anim" href="#small-dialog"><img src="{{plays.image.url}}" title="allbum-name"></a>
<a class="button play-icon popup-with-zoom-anim" href="#small-dialog">{{plays.name}}</a>
</div>
{% endfor %}
{% for links in link %}
<div id="small-dialog" class="mfp-hide">
<iframe src="{{links.lnk}}" frameborder="0"></iframe>
</div>
{% endfor %}
最后,这是我在应用程序的 views.py 文件中使用的视图:
class DashboardView(LoginRequiredMixin, TemplateView):
template_name = "dashboard.html"
login_url = reverse_lazy("home")
form = EmailSignupForm()
play = Songs.objects.all()
link = Spot.objects.all()
def get(self, request, *args, **kwargs):
context = {
'form': self.form,
'play': self.play,
'link': self.link
}
login_url = reverse_lazy("home")
return render(request, 'dashboard.html', context)
def post(self, request, *args, **kwargs):
email = request.POST.get("email")
new_signup = Signup()
new_signup.email = email
new_signup.save()
messages.info(request, "Successfully subscribed")
login_url = reverse_lazy("home")
return redirect("dashboard")
任何帮助都会受到高度赞赏。
解决方案
推荐阅读
- arrays - 这个方法的返回类型是切片还是借来的数组?
- javascript - 在追加期间需要帮助重新排列 Google 表格列
- matlab - MATLAB:基于两个变量找到目标值的有效方法
- scipy - 使用 scipy.stats 在 customPDF 类中设置种子
- spring-mvc - 使用 Postman 测试登录 api Spring Security
- flutter - Flutter:如何将小部件保存为具有透明背景的 png?
- html - 使用带有 Django 模板 {%staric 'img/header/header-1.jpg%} 的内联 url() 属性
- google-play-console - 在 Google Play 控制台中访问“API 访问”需要哪些权限?
- vuejs3 - 我正在尝试注册一个组件,但我收到错误“Vue' is not defined no-undef”
- python - PyTest - 如果 pytest.ini 中提到文件名,则替换日志文件