我正在我的本地机器上使用Django(1.5.1)构建一个库.在我的相册模型中,我有一个ImageField.可以显示相册的所有图像.它运作良好,但最终图像不会显示.您可以看到图像的边框,但图像无法加载.

class Category(models.Model):
###
class Album(models.Model):
category = models.ForeignKey(Category, related_name='albums')
###
class Image(models.Model):
album = models.ForeignKey(Album)
image = models.ImageField(upload_to = 'images/albums/')
Run Code Online (Sandbox Code Playgroud)
def detail(request, album_id):
album = get_object_or_404(Album, pk=album_id)
return render(request, 'gallery/detail.html', {'album': album})
Run Code Online (Sandbox Code Playgroud)
<h1>{{ album.title }}</h1>
{% for image in album.image_set.all %}
<a> <img src="{{ image.image.url }}" height="420"></a>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
如果这是我的专辑地址: http://localhost:8000/gallery/1/
然后图像URL是:http://localhost:8000/media/images/albums/photo_4.JPG (I get 404 when enter it in browser)
这个媒体根和网址:
MEDIA_ROOT = '/media/'
MEDIA_URL = '/localhost:8000/media/'
Run Code Online (Sandbox Code Playgroud)
我的媒体root有777权限.
我现在应该怎么做?问题出在哪儿?
我正在尝试构建一个应用程序以在视频上刻录字幕。要执行的特定任务是刻录波斯语(从右到左语言)字幕。但是我有一个问题。
当我同时听到几个单词而它们之间没有任何“回车”时,则将ffmpeg或mencoder向上推。例如,如果我有三行,则第三行出现在第一行,然后是第二行,然后第一行显示在屏幕上。
我附上了两个屏幕截图,以使其清晰可见。正如您在第二篇中可能看到的那样,波斯语字幕有9行,该行应从顶部的1到底部的9对齐,但是第9行出现在顶部的第一行。


我目前正在使用此代码在mp4视频上刻录字幕:
mencoder video.mp4 -sub subtitle.srt -utf8 -o output.mp4 -oac pcm -ovc lavc
Run Code Online (Sandbox Code Playgroud) 我是Django的新手,其教程是第1部分:编写你的第一个应用程序.当我想用这个命令在python shell中看到我的Poll对象时Poll.objects.all(),我看到[<Poll: Poll object>],但是我已经改变了我的models.py并添加了
class Poll(models.Model):
def __unicode__(self):
return self.question
class Choice(models.Model):
def __unicode__(self):
return self.choice
Run Code Online (Sandbox Code Playgroud)
但我应该看到这个:
[<Poll: What's up?>]
Run Code Online (Sandbox Code Playgroud)
有什么问题?
我正在构建Django应用程序,提交链接和投票功能.
我想显示所有链接,由用户在用户详细信息页面中投票.我可以使用以下方法在python shell中检索它们:
Link.objects.filter(votes__voter=user)
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将此作为额外的上下文字段添加到视图中.以下是代码:
models.py
class Link(models.Model):
title = models.CharField(max_length=200)
submitter = models.ForeignKey(User)
submit_date = models.DateTimeField(auto_now_add=True)
up_votes = models.IntegerField(default=0, blank=True, db_index=True)
...
class UserProfile(models.Model):
user = models.OneToOneField(User, unique=True)
...
class Vote(models.Model):
voter = models.ForeignKey(User)
link = models.ForeignKey(Link, related_name='votes')
...
Run Code Online (Sandbox Code Playgroud)
views.py
class UserProfileDetailView(DetailView):
model = get_user_model()
slug_field = "username"
template_name = "user_detail.html"
def get_object(self, queryset=None):
user = super(UserProfileDetailView, self).get_object(queryset)s
UserProfile.objects.get_or_create(user=user)
return user
Run Code Online (Sandbox Code Playgroud)
user_detail.html
...
{% if object == request.user and request.user.is_authenticated %}
<p><a href='{% url "edit_profile" %}'>Edit My Profile</a></p>
{% …Run Code Online (Sandbox Code Playgroud) django django-queryset django-views django-generic-views django-context
我正在使用 Python 2.7 解析多个 XML 文件,有一些字符串,例如:string ="[2,3,13,37–41,43,44,46]". 我将它们拆分以获得所有元素的列表,然后我必须检测带有“-”的元素,例如“37-41”,但事实证明这不是常规破折号,它是一个非 ASCII 字符:
elements = [u'2', u'3', u'13', u'37\u201341', u'43', u'44', u'46']
Run Code Online (Sandbox Code Playgroud)
所以我需要类似的东西
for e in elements:
if "–" in e:
# do something about it
Run Code Online (Sandbox Code Playgroud)
如果在这个 if 表达式中使用那个非 ASCII 字符,那么我会得到一个错误:"SyntaxError: Non-ASCII character '\xe2' in file...".
我试图if用这个 re 方法替换表达式:
re.search('\xe2', e)
Run Code Online (Sandbox Code Playgroud)
但现在不是这样了。所以我正在寻找一种方法来将非 ASCII 字符转换为常规 ASCII“-”或直接在搜索表达式中使用 ASCII 数字。
我正在尝试在django 1.8.4中更新两个IntegerField,所以我决定使用原子事务,但我有一些疑问:
1-在这种情况下使用原子事务是个好主意吗?使用它的真正好处是什么?它的效率有多高?
2-如何检查这两个部件是否相同?
一个.
@transaction.atomic
class LinkManager(models.Manager):
def vote_up(self, pk, increment=True):
if increment:
<update field 1, incrementing by 1>
else:
<update field 1, decrementing by 1>
Run Code Online (Sandbox Code Playgroud)
B.
class LinkManager(models.Manager):
def vote_up(self, pk, increment=True):
if increment:
with transaction.atomic():
<update field 1, incrementing by 1>
else:
with transaction.atomic():
<update field 1, decrementing by 1>
Run Code Online (Sandbox Code Playgroud) 我正在使用 Django 1.5.1。我的第一页顶部有一个 ImageModel。
如何仅显示此模型的最后一个条目?
#model.py
class Vitrin(models.Model):
title = models.CharField(max_length=200)
image = models.ImageField(upload_to = 'images/vitrin/')
date_created = models.DateTimeField(auto_now=True)
#views.py
def index(request):
categories = Category.objects.all()[:5]
pages = Page.objects.all()[:5]
vitrins = Vitrin.objects.all().reverse()[0]
return render(request, 'gallery/index.html', {'categories': categories, 'pages':pages, 'vitrins': vitrins})
#index.html
<div class='vitrin'>
{% for vitrin in vitrins %}
<img src="{{ vitrin.image.url|last }}" height="550">
{% endfor %}
</div>
Run Code Online (Sandbox Code Playgroud)
但我收到错误:“Vitrin”对象不可迭代
Request Method: GET
Request URL: http://localhost:8000/
Django Version: 1.5.1
Exception Type: TypeError
Exception Value:
'Vitrin' object is not iterable
Exception Location: …Run Code Online (Sandbox Code Playgroud) django ×5
python ×4
django-views ×2
ascii ×1
atomic ×1
farsi ×1
ffmpeg ×1
image ×1
mencoder ×1
python-2.7 ×1
string ×1
subtitle ×1
transactions ×1