小编Sov*_*iut的帖子

删除时为什么我的GenericForeignKey级联不会?

我正在创建一个自定义评论系统,可以使用contenttypes GenericForeignKey将评论附加到任何模型.

class Comment(models.Model):
    body = models.TextField(verbose_name='Comment')
    user = models.ForeignKey(User)
    parent = models.ForeignKey('self', null=True, blank=True)
    created = models.DateTimeField(auto_now_add=True)
    content_type = models.ForeignKey(ContentType)
    object_id = models.PositiveIntegerField()
    content_object = generic.GenericForeignKey('content_type', 'object_id')
Run Code Online (Sandbox Code Playgroud)

我的理解是,当附加注释的模型被删除时,删除应该级联并删除注释.

不幸的是,这没有发生,我很难过.是否有任何常见原因可以更改默认删除行为?

django foreign-keys cascading-deletes django-contenttypes generic-foreign-key

20
推荐指数
2
解决办法
4698
查看次数

为什么我的 Vue 文件会导致 TS6504 错误并询问我是否要“allowJs”?

我有一个简单的 Vue 3 项目,它使用 TypeScript,并且在运行时出现以下错误vue-tsc --noEmit。

error TS6504: File '/proj/src/pages/Index.vue.__VLS_template.jsx' is a JavaScript file. Did you mean to enable the 'allowJs' option?
  The file is in the program because:
    Root file specified for compilation

error TS6504: File '/proj/src/pages/Index.vue.js' is a JavaScript file. Did you mean to enable the 'allowJs' option?
  The file is in the program because:
    Root file specified for compilation

error TS6504: File '/proj/src/pages/PassLayout.vue.__VLS_template.jsx' is a JavaScript file. Did you mean to enable the 'allowJs' option? …
Run Code Online (Sandbox Code Playgroud)

typescript vue.js

20
推荐指数
1
解决办法
8379
查看次数

如何在Python中使环境变量更改?

根据我的阅读,Python实例中对环境变量的任何更改仅在该实例中可用,并在实例关闭后消失.是否有任何方法可以通过将它们提交给系统来使它们坚持下去?

我需要这样做的原因是因为在我工作的工作室,像Maya这样的工具在很大程度上依赖于环境变量来配置跨多个平台的路径.

我的测试代码是

import os
os.environ['FAKE'] = 'C:\\'
Run Code Online (Sandbox Code Playgroud)

打开另一个Python实例并请求os.environ['FAKE']产生一个KeyError.

注意:可移植性将是一个问题,但我正在编写的小API将能够检查操作系统版本并在必要时触发不同的命令.

也就是说,我已经走了使用Windows注册表技术的路线,只会编写替代方法,在其他平台上调用shell脚本,因为它们成为需求.

python environment-variables

19
推荐指数
5
解决办法
3万
查看次数

是否可以使用App Engine生成并返回ZIP文件?

我有一个小项目,非常适合Google App Engine.实现它取决于生成ZIP文件并将其返回的能力.

由于App Engine的分布式特性,据我所知,ZIP文件无法在传统意义上"内存"创建.它基本上必须生成并在单个请求/响应周期中发送.

Python zip模块是否甚至存在于App Engine环境中?

python zip google-app-engine in-memory

19
推荐指数
2
解决办法
8548
查看次数

如何在WTForms中生成动态字段

我试图根据本文档在WTForms中生成具有动态字段的表单http://wtforms.simplecodes.com/docs/1.0.2/specific_problems.html#dynamic-form-composition

我有这个子表单类,允许用户从列表中选择要购买的项目:

class Item(Form):
    itmid = SelectField('Item ID')
    qty = IntegerField('Quantity')

class F(Form):
        pass
Run Code Online (Sandbox Code Playgroud)

将有多个类别的购物项目,因此我想根据用户将选择的类别生成动态选择字段:

fld = FieldList(FormField(Item))
fld.append_entry()
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

AttributeError: 'UnboundField' object has no attribute 'append_entry'
Run Code Online (Sandbox Code Playgroud)

我做错了什么,或者在WTForms中没有办法做到这一点?

python flask wtforms

18
推荐指数
3
解决办法
2万
查看次数

如何区分Javascript中的"Enter"和"Return"键?

一些桌面应用程序以不同的方式处理"回车"键和小键盘的"回车"键.我注意到这两个键在Javascript(jQuery)中生成相同的keyCode(13).

它们是否在浏览器环境中转换为相同,或者是否可以区分它们(即,使CR在文本区域中创建一个新行,并且'enter'键提交它的形式?

javascript keycode

17
推荐指数
3
解决办法
2万
查看次数

我可以放慢Django的速度吗?

简单的问题

./manage.py runserver
Run Code Online (Sandbox Code Playgroud)

我可以放慢localhost:8000我的开发机器速度,这样我就可以模拟文件上传并处理ajax上传的外观和感觉吗?

django http

17
推荐指数
2
解决办法
1556
查看次数

如何使用JavaScript临时禁用文本选择?

这是一个特定问题,所以我会说得对.

我正在为一个Web应用程序的一部分做一个简短而简单的拖放例程,虽然拖放位工作正常,但在操作过程中该网站变得非常丑陋,因为浏览器仍然执行默认操作并且工作正常关于文本选择.

我尝试了一些主要涉及从mousedown或click事件中返回false的解决方案,虽然它们在某些浏览器中禁用了文本选择,但它们似乎也完全禁用了mouseup事件,破坏了脚本的"drop"位并留下了这个鼠标悬浮在鼠标周围 - 不好玩.

我真的不希望文本选择完全消失,我只是想建议浏览器......拖动时不要这样做,如果这有意义的话.由于我知道受影响的区域(涉及iframe),我可以轻松地将属性应用于受影响的元素等.如果需要,我可以发布代码,但我正在寻找更多的通用解决方案.由于这只是一个美学的东西,我正在寻找适用于大多数浏览器的修复程序,它并不是那么重要.

谢谢!

html javascript drag-and-drop behavior

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

如何在Mocha中故意使空占位符测试失败?

我在NodeJS中编写API并使用Mocha,Chai和SuperTest进行测试.我正在使用一种典型的测试驱动方法来编写测试,然后用工作代码来满足这些测试.但是,由于所有不同排列的测试数量,我已经开始编写空占位符测试,以便我有所有it('should...')描述,以提醒我在获得该功能时要测试什么.例如:

it 'should not retrieve documents without an authorized user', (done) ->
    done()
Run Code Online (Sandbox Code Playgroud)

这个问题是在done()没有任何断言的情况下调用,所以测试被认为是传递,所以我添加了以下断言.

false.should.equal true # force failure
Run Code Online (Sandbox Code Playgroud)

但它是一个黑客,Mocha显示失败的原因似乎令人困惑,特别是当其他完整测试可能失败时.

有没有官方方法在摩卡故意失败像这样的占位符测试?

unit-testing mocha.js node.js chai

16
推荐指数
4
解决办法
1万
查看次数

如何从控制台访问已知的Ember组件

使用Ember调试Chrome扩展程序,我已在我尝试自动化的网站中识别出此组件(但无法直接访问以更改代码):

<MYAPP@component:zipcode-field::ember592>
Run Code Online (Sandbox Code Playgroud)

在层次结构中显示为:

application
    engine
        myui
            zipcodeField
Run Code Online (Sandbox Code Playgroud)

如果我value在调试器中编辑该元素的属性,它会根据需要更新UI和模型.我可以通过控制台的单线程来完成吗?

更新:到目前为止,我可以在控制台中输入:

Ember.lookup.$E.container.lookup("MYAPP@component:zipcode-field")
Run Code Online (Sandbox Code Playgroud)

但无法value像在调试器中那样访问/更改其属性.

更新:

在对其中一个答案的反馈中,我的目标是有一个控制台单行程序,可以在没有安装任何调试器的情况下给某人以便以相同的行为运行代码.使用$E控制台内的变量要求在运行代码之前手动选择元素,这是不够的.

javascript google-chrome-devtools ember.js

16
推荐指数
2
解决办法
5366
查看次数