小编use*_*661的帖子

避免在INSERT查询中复制唯一键

我有一个MySQL查询,如下所示:

INSERT INTO beer(name, type, alcohol_by_volume, description, image_url) VALUES('{$name}', {$type}, '{$alcohol_by_volume}', '{$description}', '{$image_url}')

唯一的问题是name是一个唯一值,这意味着如果我遇到重复,我会收到如下错误:

Error storing beer data: Duplicate entry 'Hocus Pocus' for key 2
Run Code Online (Sandbox Code Playgroud)

有没有办法确保SQL查询不会尝试添加已存在的唯一值而不运行SELECT整个数据库的查询?

php mysql

6
推荐指数
2
解决办法
3393
查看次数

反向未找到错误

如果我有一个像这样的URL:

url(r'^reset/(?P<uid>\w+)/(?P<token>\w+)/$', 'django.contrib.auth.views.password_reset_confirm', name="reset_password")
Run Code Online (Sandbox Code Playgroud)

和这样的URL标记:

{% url 'reset_password' uid=uid token=token %}
Run Code Online (Sandbox Code Playgroud)

当我尝试呈现包含标记的页面时,为什么会出现此错误:

Reverse for 'reset_password' with arguments '()' and keyword arguments not found 
Run Code Online (Sandbox Code Playgroud)

uid和token都是有效的字符串.

python django django-templates django-urls django-1.5

6
推荐指数
1
解决办法
409
查看次数

使用EmailMultiAlternatives的Celery错误

我有一个包装周围EmailMultiAlternatives使界面有点清洁(从几乎逐字这里):

class Email(object):
    '''
    Wrapper around the Django core's EmailMultiAlternatives that makes it simpler
    to render txt and html templates.
    '''

    def __init__(self, to, subject):
        self.to = to
        self.subject = subject
        self.html = None
        self.text = None

    def _render(self, template, context):
        return render_to_string(template, context)

    def render_html(self, template, context):
        self.html = self._render(template, context)

    def render_text(self, template, context):
        self.text = self._render(template, context)

    def send(self, from_addr=None, fail_silently=False):
        if isinstance(self.to, basestring):
            self.to = [self.to]
        if not from_addr:
            from_addr = settings.EMAIL_HOST_USER …
Run Code Online (Sandbox Code Playgroud)

python django celery

6
推荐指数
1
解决办法
547
查看次数

将INFO记录到Django Server的STDOUT

我正在设置登录Django服务器.我希望能够将任意INFO级别的字符串记录到服务器的标准输出中,因此它与标准的Django消息一起出现,如下所示:

[24/Feb/2014 20:37:03] "POST /v1/events/ HTTP/1.1" 201 0
Run Code Online (Sandbox Code Playgroud)

这是我当前的日志配置:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler'
        },
        #'file': {
            #'level': 'DEBUG',
            #'class': 'logging.FileHandler',
            #'filename': '/tmp/djdebug.log',
        #},
        'console': {
            'level': 'INFO',
            'class': 'logging.StreamHandler',
            'stream': sys.stdout
        }
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
        'django': {
            'handlers': ['console'],
            'propogate': True,
            'level': 'INFO'
        }
        #'django': {
            #'handlers': ['file'],
            #'propagate': True, …
Run Code Online (Sandbox Code Playgroud)

python django

6
推荐指数
1
解决办法
4188
查看次数

在圆形图像周围生成光滑的白色边框

我正在使用pgmagick生成一个圆形缩略图.我正在使用类似于此处讨论的过程,这确实为我生成了一个漂亮的圆形缩略图.但是,我需要在圆的半径周围有一个白色边框.

我最初的方法是创建一个具有透明背景的稍大的白色圆圈的新图像,并将缩略图复合在其上,让白色圆圈从缩略图下方"峰顶"并创建边框效果.这是我用来实现的pgmagick代码:

border_background = Image(Geometry(220, 220), Color('transparent'))
drawer = Draw()
drawer.circle(110, 110, 33.75, 33.75)
drawer.fill_color(Color('white'))
drawer.stroke_antialias(False)
border_background.draw(drawer.drawer)
border_background.composite(original_thumbnail, 0, 0, CompositeOperator.OverCompositeOp)
Run Code Online (Sandbox Code Playgroud)

这"有效",但周围的白色边框相当扭曲,边缘不连贯 - 没有生产就绪.如果我拿出drawer.stroke_antialias(False),那就更糟了.

有关使用pgmagick使这个边框更平滑的任何想法?

python imagemagick graphicsmagick pgmagick

6
推荐指数
2
解决办法
1038
查看次数

尾巴多个日志流利

我正在尝试使用以下配置拖尾多个日志:

<source>
  type tail
  tag es.workers.worker1

  format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/

  path /var/log/upstart/worker1.log
  pos_file /var/lib/fluentd/pos/-var-log-upstart-worker1.log.pos

</source>
<source>
  type tail
  tag es.workers.worker2

  format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/

  path /var/log/upstart/worker2.log
  pos_file /var/lib/fluentd/pos/-var-log-upstart-worker2.log.pos

</source>
<source>
  type tail
  tag es.workers.worker3

  format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/

  path /var/log/upstart/worker3.log
  pos_file /var/lib/fluentd/pos/-var-log-upstart-worker3.log.pos

</source>
<source>
  type tail
  tag es.workers.worker4

  format /^\[(?<timestamp>.*? .*?) (?<log_level>[INFO|ERROR][^\]]*)\] (?<message>.*)$/

  path /var/log/upstart/worker4.log
  pos_file /var/lib/fluentd/pos/-var-log-upstart-worker4.log.pos

</source>
Run Code Online (Sandbox Code Playgroud)

这不起作用.通常(但不总是),我只获取第一个文件的日志.有时它是一个不同的文件,但它总是只有一个.关于发生了什么的任何想法?我在流利的错误日志中没有收到任何有意义的错误.

logging fluentd

6
推荐指数
1
解决办法
1229
查看次数

使用 Python 写入 Google 文档

我有一些数据要写入 Google Docs 中的简单多列表。这种方式是否太麻烦而无法开始尝试?我只想在 XHTML 中呈现它,但我的客户在 Google Docs 上设置了一个非常具体的工作流程,她不想让我干预。Google Docs API 似乎更适合更新元数据和对文件格式进行简单更改,而不是仅使用原始数据和一些格式规则来编写整个文档的任务。我是否遗漏了什么,或者是否有任何其他库可以实现这一目标?

python google-drive-api

5
推荐指数
1
解决办法
3736
查看次数

目录不存在时的错误处理

我有一种情况,我想将 MP3 存储在一个目录中,如果该目录不存在则创建该目录,如果无法创建该目录则退出程序。我读到这os.path.exists()对性能的影响比 更大os.makedirs(),因此考虑到这一点,我编写了以下代码:

try: 
    # If directory has not yet been created
    os.makedirs('Tracks')
    with open('Tracks/' + title + '.mp3', 'w') as mp3:
        mp3.write(mp3File.content)
        print '%s has been created.' % fileName

except OSError, e:
    # If directory has already been created and is accessible
    if os.path.exists('Tracks'):
        with open('Tracks/' + title + '.mp3', 'w') as mp3:
            mp3.write(mp3File.content)
            print '%s has been created.' % fileName

    else: # Directory cannot be created because of file permissions, etc. 
        sys.exit("Error creating …
Run Code Online (Sandbox Code Playgroud)

python

5
推荐指数
1
解决办法
2万
查看次数

'模块'对象在django中没有属性'模型'错误

我正在研究一个简单的博客引擎.这是我的模型的初始代码:

from django.db import models
from django.contrib.auth.models import User

class Entry(models.Model):

    title = models.CharField(max_length=80)
    author = models.models.models.ForeignKey(User)
    pubdate = models.DateTimeField()
    text = models.TextField()
    tags = models.ManyToManyField(Tag)


class Tag(models.Model):
    name = models.CharField(max_length=25)

class Comment(models.Model):
    author = models.ForeignKey(User)
    pubdate = models.DateTimeField()
    text = models.TextField()
Run Code Online (Sandbox Code Playgroud)

当我尝试运行时python manage.py syncdb blog,我收到错误

'Module' Object Has no Attribute 'models'
Run Code Online (Sandbox Code Playgroud)

我正在使用sqlite3.我还没有设置任何观点或测试.在settings.py,我已经包括以下应用程序:

'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'blogApp',
'south',
Run Code Online (Sandbox Code Playgroud)

有什么想法可能会出错吗?

python django

5
推荐指数
1
解决办法
6462
查看次数

使用Nokogiri/Open URI获取动态生成的HTML

我试图通过在Chrome中查看其HTML并使用Nokogiri获取数据来搜索网站.问题是某些标签是动态生成的,并且在使用open-uri时它们不会出现open(url)请求.有没有办法"强制"一个网站动态生成其内容的工具,如打开uri阅读?

ruby open-uri nokogiri

5
推荐指数
1
解决办法
1753
查看次数