小编Dan*_*oss的帖子

从iPhone到Python/Django的表情符号

我正在尝试保存iPhone应用程序中的评论,这些评论可能现在很可能包含表情符号.无论我做什么,我都无法将表情符号保存到MySQL数据库......常量Unicode错误.

  • Python 2.6.5
  • Django 1.2.1
  • MySQL数据库(设置为表和行的utf8字符集)
  • 将数据保存到VARCHAR(255)字段

我一直收到的错误是:

Incorrect string value: '\xF0\x9F\x97\xBC \xF0...' for column 'body' at row 1
Run Code Online (Sandbox Code Playgroud)

我传入数据库的字符串是:

test_txt = u"Emoji - \U0001f5fc \U0001f60c \U0001f47b ...".encode('utf-8')
Run Code Online (Sandbox Code Playgroud)

更新:这是我正在使用的模型:

class ItemComment(db.Model):
  item = db.ForeignKey(Item)
  user = db.ForeignKey(Profile)
  body = db.CharField(max_length=255, blank=True, null=True)

  active = db.BooleanField(default=True)
  date_added = db.DateTimeField(auto_now_add=True)

  def __unicode__(self):
    return "%s" % (self.item)
Run Code Online (Sandbox Code Playgroud)

奇怪的是,如果我尝试将其传递给我在MySQL中创建的字段而不是Django models.py它可以正常工作.但是只要我在Django模型中注册该字段就会死掉.是否有其他方式来存储这些?

任何想法都会很棒.
我不能再坚持这个......

更新2:使用以下UPDATE语句在终端中跟踪它(注意U0001f5fc)

UPDATE 'table' SET 'body' = '', WHERE 'table'.'id' = 1 ; args=(u'\U0001f5fc')
Run Code Online (Sandbox Code Playgroud)

使用硬核,因为我可以传递值:

force_unicode(smart_str(value), encoding='utf-8', strings_only=False, errors='ignore') …
Run Code Online (Sandbox Code Playgroud)

python iphone django emoticons

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

Python脚本与Cron作业

我需要运行一个cron作业,以便在每个星期一早上的"00:00:00"UTC每周生成一个用户排名列表.有没有人为此得到一个例子,它真的是我的头...我看着"crontab -e"并立即迷失了.

Basics:
 - Run the script, eg: /srv/django/get_rankings.py
 - Run the script at "00:00:00" and "00:05:00" every Monday.
 - Run the same script the next Monday ... and repeat
Run Code Online (Sandbox Code Playgroud)

我在Linux Arch上,任何抬头都会很棒.

非常感谢,希望一切顺利

python cron archlinux

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

标签 统计

python ×2

archlinux ×1

cron ×1

django ×1

emoticons ×1

iphone ×1