小编Ale*_*iro的帖子

恢复自动生成的迁移以重命名Django中的表时出错

我在恢复包含重命名表的Django(1.8.7)迁移方面遇到了问题.即使它似乎能够在Postgres中重命名它,它然后尝试使用表名添加约束.

这是追溯:

    cursor.execute(sql, params)
  File "/Users/myworkspace/projects/xxx/venv/lib/python3.5/site-packages/django/db/backends/utils.py", line 79, in execute
    return super(CursorDebugWrapper, self).execute(sql, params)
  File "/Users/myworkspace/projects/xxx/venv/lib/python3.5/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/Users/myworkspace/projects/xxx/venv/lib/python3.5/site-packages/django/db/utils.py", line 97, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/Users/myworkspace/projects/xxx/venv/lib/python3.5/site-packages/django/utils/six.py", line 658, in reraise
    raise value.with_traceback(tb)
  File "/Users/myworkspace/projects/xxx/venv/lib/python3.5/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: relation "team_membershiprole" does not exist
Run Code Online (Sandbox Code Playgroud)

如果你看一下它生成的SQL,

[...]
ALTER TABLE "team_membershiprole" RENAME TO "team_leadershiprole";
[...]
ALTER TABLE "team_leadershipteammember" 
    ADD CONSTRAINT "team_l_role_id_xxx" 
    FOREIGN KEY ("role_id") REFERENCES "team_membershiprole" ("id") …
Run Code Online (Sandbox Code Playgroud)

python django django-migrations

11
推荐指数
1
解决办法
383
查看次数

在FB墙上发布的嵌入式SWF将不会出现在新的Facebook UI上

我已经找到了数以千计的解决方案,可以在Facebook墙上嵌入一个Flash播放器,其中大部分已经过时了,而且在FB最近做出的主要UI更改之后几乎没有发布任何内容.

话虽这么说,我发现的最简单和(理论上)仍然有效的方法是通过发布指向HTML的链接,该链接显示FB将读取和解释的Open Graph标记,如下所示:

<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>My title!</title>
<meta property="og:title" content="My title!">
<meta property="og:type" content="video.movie">
<meta property="og:url" content="http://mysite.com/url/">
<meta property="og:description" content="content description">
<meta property="og:image" content="http://mysite.com/URL_THUMBNAIL.jpeg">
<meta property="og:site_name" content="mysite.com">
<meta property="og:video" content="http://mysite.com/flash.swf?flashVar=0101">
<meta property="og:video:type" content="application/x-shockwave-flash">
<meta property="og:video:width" content="300">
<meta property="og:video:height" content="200">
Run Code Online (Sandbox Code Playgroud)

重要的是要注意flashVar对于我正在使用的那种应用程序是必需的,我不希望这是问题,因为当我使用Facebook的对象调试器(developers.facebook)时没有指出这一点. .COM /工具/调试/).

此外,最有趣的问题是,当我使用仍然使用旧Facebook界面的帐户发布链接(没有图表搜索)时,此解决方案实际上有效 - 将出现一个小"播放"按钮[如下面的链接所示]缩略图,当我点击它时,SWF开始在我的Facebook墙上播放.

http://das.ufsc.br/~alexandrec/SSoldFB.png

但是,当我尝试在我的FB帐户(已经有图搜索和所有其他UI更改)上发布相同的链接时,此播放按钮将不会显示[如下所示],如果我尝试单击缩略图,将打开另一个窗口,其中指定了链接og:url

http://das.ufsc.br/~alexandrec/SSnewFB.png

我想知道这是否是我的网站放在某种白名单上的问题,但我没有找到任何最新的文档,提到这种实际的列表 - 并且我的链接适用于旧的UI我相信我已经在那个名单上了.

还有另一种方法可以通过Graph API在墙上发布SWF文件,发出一个带有,消息等对象的POST请求,但我发现这种方式不那么有趣,因为我无法指定宽度和嵌入式播放器的高度,这对我的应用来说非常重要.

谁知道为什么会这样?Facebook是否已经决定不再允许用户发布SWF,或者这只是一个(希望是临时的)Facebook漏洞?有没有其他方法可以使这项工作(考虑到我定义嵌入式播放器的高度和宽度的必要性)?

flash facebook opengraph facebook-graph-api

6
推荐指数
0
解决办法
1827
查看次数

Python"header.py"模块

我将一个包含大量方法的大型python文件拆分成几个较小的方法.但是,有一个问题:我希望所有这些小文件都能导入几乎相同的模块.

我试图创建一个header.py文件,我只是粘贴了公共标题.我已经添加from header import *了其他的,但在我看来,这只会导入列出的方法header.py,而不是实际的模块.

我知道一个解决方案是找出每个小文件所依赖的库,但是没有更快的方法吗?

python django python-module python-import

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