我有一个自定义用户模型如下:
class User(AbstractUser):
subscribe_newsletters = models.BooleanField(default=True)
old_id = models.IntegerField(null=True, blank=True)
old_source = models.CharField(max_length=25, null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)
并使用内置的UserAdmin
admin.site.register(User, UserAdmin)
Run Code Online (Sandbox Code Playgroud)
虽然编辑用户记录工作正常,但是当我添加用户时,我收到以下错误
Exception Value:
relation "auth_user" does not exist
LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
Run Code Online (Sandbox Code Playgroud) 我有这个管道文件来对我的项目进行单元测试:
image: jameslin/python-test
pipelines:
default:
- step:
script:
- service mysql start
- pip install -r requirements/test.txt
- export DJANGO_CONFIGURATION=Test
- python manage.py test
Run Code Online (Sandbox Code Playgroud)
但是可以切换到另一个Docker镜像进行部署吗?
image: jameslin/python-deploy
pipelines:
default:
- step:
script:
- ansible-playbook deploy
Run Code Online (Sandbox Code Playgroud)
我似乎无法找到任何说明是或否的文件.
我有一点反应代码叫main.js:
var React = require('react');
var Comment = React.createClass({
render: function(){
return (
<div className="comment">
<h2 className="commentAuthor">
{this.props.author}
</h2>
<span dangerouslySetInnerHTML={{__html:marked(this.props.children.toString(), {sanitize:true})}} />
</div>
);
}
});
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用browserify并使用它重新执行:
browserify -t reactify main.js
但是我收到了这个错误:
Error: Cannot find module 'react' from '/Users/jameslin/projects/reactjs/react-0.13.2'
at /usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:46:17
at process (/usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:173:43)
at ondir (/usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:188:17)
at load (/usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:69:43)
at onex (/usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:92:31)
at /usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:22:47
at Object.oncomplete (fs.js:107:15)
Run Code Online (Sandbox Code Playgroud)
鉴于我已安装react和reactifynpm模块:
npm install -g reactnpm install -g reactify突然之间,我想知道使用生成器迭代结果集的以下方式是否会对正常迭代产生任何正面或负面影响?
例如.
def all_items_generator():
for item in Item.objects.all():
yield item
for item in all_items_generator():
do_stuff_with_item(item)
Run Code Online (Sandbox Code Playgroud)
反对:
for item in Item.objects.all():
do_stuff_with_item(item)
Run Code Online (Sandbox Code Playgroud) 我有一个使用谷歌地图自动完成库的地址搜索框:
var autocompleter = new google.maps.places.Autocomplete(item);
Run Code Online (Sandbox Code Playgroud)
奇怪的是,地址只返回name属性:
Object {name: "138 Manukau Road, Pukekohe, New Zealand"}
Run Code Online (Sandbox Code Playgroud)
但其他地址提供的数据更多,例如:
Object {address_components: Array[7], adr_address: "<span class="street-address">430 Queen St</span>, …n>, <span class="country-name">New Zealand</span>", formatted_address: "430 Queen St, Auckland, Auckland 1010, New Zealand", geometry: Object, icon: "http://maps.gstatic.com/mapfiles/place_api/icons/geocode-71.png"…}address_components: Array[7]adr_address: "<span class="street-address">430 Queen St</span>, <span class="extended-address">Auckland</span>, <span class="locality">Auckland</span> <span class="postal-code">1010</span>, <span class="country-name">New Zealand</span>"formatted_address: "430 Queen St, Auckland, Auckland 1010, New Zealand"geometry: Objecthtml_attributions: Array[0]icon: "http://maps.gstatic.com/mapfiles/place_api/icons/geocode-71.png"id: "00fce9b1c43ac960068949cbf32eecb587b0b020"name: "430 Queen St"place_id: "ChIJQfHW8OVHDW0RyHgQRLy8fKc"reference: "CqQBlgAAAIDnkWNQ4cmU624FV6l_bAxmI27czZoytmzrrEWVaXgR5LcZuFqt1cL3WIMzoWhmZNhftRzhLUVwpFjqmw3qwKIqugj02HrvU5x6PtUvepPNPV-08pin_PvRU-__mMMH3N2vILIOLM_AnYFMqNG5MArF4ChZXJxZj6vk7PI3ORJe1W6QjIXoPgesL379E4WUCjrZ0fjv3KgqzB-G4f-8A5MSEN5S47-QZqkY5sl37cIQFWQaFLg4InSVLpYGg8n1gGO958TcA4UK"scope: "GOOGLE"types: Array[1]url: "https://maps.google.com/maps/place?q=430+Queen+St,+Auckland,+Auckland+1010,+New+Zealand&ftid=0x6d0d47e5f0d6f141:0xa77cbcbc441078c8"vicinity: "Auckland"__proto__: Object
Run Code Online (Sandbox Code Playgroud)
我发现了一个类似的问题,有人在2012年提出,看起来没有参加.
可以说我有这个APIView
class Dummy(APIView):
def get(self, request):
return Response(data=request.query_params.get('uuid'))
Run Code Online (Sandbox Code Playgroud)
为了测试它,我需要创建一个请求对象来传递给get函数
def test_dummy(self):
from rest_framework.test import APIRequestFactory
factory = APIRequestFactory()
request = factory.get('/?uuid=abcd')
DummyView().get(request)
Run Code Online (Sandbox Code Playgroud)
它抱怨 AttributeError: 'WSGIRequest' object has no attribute 'query_params'
仔细观察,工厂创建一个WSGIRequest实例而不是DRF版本<class 'rest_framework.request.Request'>.
>>> from rest_framework.test import APIRequestFactory
>>> factory = APIRequestFactory()
>>> request = factory.get('/')
>>> request.__class__
<class 'django.core.handlers.wsgi.WSGIRequest'>
Run Code Online (Sandbox Code Playgroud) 假设我有.env文件包含如下行:
USERNAME=ABC
PASSWORD=PASS
Run Code Online (Sandbox Code Playgroud)
与普通的export前缀不同,所以我无法直接获取文件.
创建从.env文件加载内容并将其设置为环境变量的shell脚本的最简单方法是什么?
我对 asyncio 完全陌生ContextVars,我刚刚阅读了 3.7 中的新内容并发现ContextVars,我很难理解它的用法,我只知道它在协程中很有帮助,而不是使用thread.localshould use ContextVars。但是官方文档和顶级谷歌搜索结果都无法帮助我真正理解其目的。
那么凸变量是跨模块共享的吗?我试过:
例子.py
from contextvars import ContextVar
number = ContextVar('number', default=100)
number.set(1)
Run Code Online (Sandbox Code Playgroud)
然后我尝试导入 number.py
(playground) Jamess-MacBook-Pro-2:playground jlin$ python3.7
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import example
>>> from contextvars import ContextVar
>>> number = ContextVar('number', default=200)
>>> number.get()
200
Run Code Online (Sandbox Code Playgroud)
我原以为number.get()会返回 1,但显然我理解它的目的是错误的。
有人可以帮我理解这一点吗?
作为标题,是否有理由不使用str()将unicode字符串转换为str?
>>> str(u'a')
'a'
>>> str(u'a').__class__
<type 'str'>
>>> u'a'.encode('utf-8')
'a'
>>> u'a'.encode('utf-8').__class__
<type 'str'>
>>> u'a'.encode().__class__
<type 'str'>
Run Code Online (Sandbox Code Playgroud)
更新:谢谢你的答案,也不知道我是否使用特殊字符创建一个字符串它会自动转换为utf-8
>>> a = '€'
>>> a.__class__
<type 'str'>
>>> a
'\xe2\x82\xac'
Run Code Online (Sandbox Code Playgroud)
也是python 3中的Unicode对象
我有以下模型:
class Credit(models.Model):
user = models.ForeignKey(User)
...
Run Code Online (Sandbox Code Playgroud)
和一个列表视图
class CreditListView(ListView):
paginate_by = 10
model = Credit
...
Run Code Online (Sandbox Code Playgroud)
如果我想在 CreditListView 侧按用户过滤学分:
def get_queryset(self):
users = User.objects.filter(...)[:10]
credits = Credits.objects.filter(user__in=users)
return credits
Run Code Online (Sandbox Code Playgroud)
我会得到一个 NotSupportedError 异常:
(1235, "This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'")
Run Code Online (Sandbox Code Playgroud)