我想保存來自youtube的視頻的url字段,以便我可以將其加載到我的網站中。到目前爲止,我想出了這個在HTML中:django - 使用正則表達式去掉和替換urlfield
<h3>{{video.title}}</h3>
<object width="425" height="344"><param name="movie" value="{{video.video_url}}"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="{{video.video_url}}" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>
但問題是,它只能以一種方式工作。例如:
網址:http://www.youtube.com/watch?v=e4lHTj9xFqE
如果watch?
的條紋這隻會工作,=
成爲/
這樣最終網址會有點像這個
http://www.youtube.com/v/e4lHTj9xFqE
我在想的在保存之前使用正則表達式並替換並去除網址。我該如何去掉watch?
,然後用/
替換=
?還有沒有更好的方式來加載在HTML中的視頻?來自你們的建議將非常感謝。謝謝!
編輯:
models.py:
class Video(models.Model):
title = models.CharField(max_length=100)
video_url = models.URLField(max_length=100)
def save(self, *args, **kwargs):
new_url = (self.video_url.replace("watch?v=","v/"))
super(Video, self).save(*args, **kwargs)
if new_url:
self.video_url = new_url
工作,感謝您對兩個答案!我確實嘗試過,但我得到錯誤。我已經添加了我的models.py。請你看看它。 – Robin
正則表達式也不能代替它。 – Robin
@Robin現在看到.. –