我已经安装了django rest框架pip install djangorestframework但是当我运行"python3 manage.py sycndb"时我仍然遇到这个错误:
ImportError:没有名为'rest_framework'的模块
我正在使用python3,这是我的问题吗?
我有以下代码,并在尝试运行时收到以下错误消息:
NameError: name 'true' is not defined
Run Code Online (Sandbox Code Playgroud)
我试图让Raspberry Pi在端口17上接收输入时运行HTML脚本:
import RPi.GPIO as GPIO
import time
import os
inputSignal = 17
GPIO.setmode(GPIO.BCM)
GPIO.setup(inputSignal,GPIO.IN)
while true:
if (GPIO.input(inputSignal)):
os.system("html /home/pi/index.html")
else:
print("No Input")
Run Code Online (Sandbox Code Playgroud) 简而言之,为什么我会收到以下错误?
>>> yes = True
>>> 'no [{0}] yes [{1}]'.format((" ", "x") if yes else ("x", " "))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: tuple index out of range
Run Code Online (Sandbox Code Playgroud)
我使用python 2.6.
我尝试使用DRF序列化程序来序列化模型对象.我发现对象中的DatetimeField不会输出"2015-10-21T09:28:53.769000Z"ISO-8601格式
我查找DRF文档为什么我不能输出ISO-8601格式.据datetimefield说:
format- 表示输出格式的字符串.如果未指定,则默认为与DATETIME_FORMAT设置键相同的值,除非设置,否则将为"iso-8601".设置为格式字符串表示to_representation返回值应强制转换为字符串输出.格式字符串如下所述.将此值设置为None表示Python
这意味着iso-8601如果我从未设置DATETIME_FORMAT参数,那么输出格式是默认的吗?还没有,它仍然没有变化.
当我尝试编写django项目的设置如下:
REST_FRAMEWORK = {
'DATETIME_FORMAT': "iso-8601",
}
Run Code Online (Sandbox Code Playgroud)
或者我在DatetimeField参数中写入如下:
class UserSerializer(...):
last_login = DatetimeField(format='iso-8601')
class Meta:
model = User
fields = ('email', 'displayname', 'is_active',
'date_joined', 'last_login')
Run Code Online (Sandbox Code Playgroud)
它仍然没有变化.
有谁知道怎么设置它?
python django serialization python-2.7 django-rest-framework
我不知道为什么文档说"这并不意味着它始终是正确的方法.在使用基于类的视图而不是基于函数的视图时,需要考虑类似的一组权衡.使用视图集不太明确而不是单独建立你的观点."
如果我想制作休息api,这类似于ruby-on-rail.我认为这viewsets是一个很好的方法.
有人可以解释一下吗?
文件链接:http: //www.django-rest-framework.org/tutorial/6-viewsets-and-routers/#trade-offs-between-views-vs-viewsets
我想获得Flask-SQLAlchemy查询发出的SQL.在Django中,我可以打印query属性来获取SQL.如何在Flask中获得类似的东西?
# django
>>> queryset = MyModel.objects.all()
>>> print queryset.query
SELECT "myapp_mymodel"."id", ... FROM "myapp_mymodel"
Run Code Online (Sandbox Code Playgroud) 我正在做关于处理request.data和from.cleaned_data问题的Django 项目。当用户仅输入指定字段时,它将向我的服务器发送请求。接下来,表单类处理请求,除了处理输入字段并且不从表单内置字段返回任何输入字段。
这是请求数据:
<QueryDict: {u'is_public': [u'True']}>
Run Code Online (Sandbox Code Playgroud)
这是来自类的清理数据:
{'name': u'', 'devie_type': u'', 'is_public': True, 'serial_num': u'', 'is_online': False, 'operation_system': u''}
Run Code Online (Sandbox Code Playgroud)
我知道这些是字典类型。我希望得到他们的联合键和清理数据的值。我希望它返回:
{u'is_public': True}
Run Code Online (Sandbox Code Playgroud)
这是我的尝试:
a = {}
for k in request.data:
if k in the_form.cleaned_data:
a[k] = the_form.cleaned_data[k]
print a
Run Code Online (Sandbox Code Playgroud)
它可读吗?或者是否有任何关于在 python 中处理联合字典的内置函数?
想象我们有一个 file = open("filetext.txt", 'r')
split()方法和readlines()方法之间有什么区别似乎两条线都分开并将它作为字符串放在列表中.是什么让他们与众不同?
for line in file:
values = line.split() #break each line into a list
file.readlines() #return a list of strings each represent a single line in the file
Run Code Online (Sandbox Code Playgroud) 假设我有一个列表如下:
a = ['111', 213, 74, '99', 't', '88', '-74', -74]
Run Code Online (Sandbox Code Playgroud)
该列表包含数字类型的字符串,数字和数据类型的字符串.
我认为类似数字的字符串可以转换数字,所以它可以看作一个数字.
这是我的方法:
a = ['111', 213, 74, '99', 't', '88', '-74', -74]
def detect(list_):
for element in list_:
try:
int(element)
except ValueError:
return False
return True
print detect(a)
Run Code Online (Sandbox Code Playgroud)
但它看起来如此冗长且难以理解,所以任何人都有更好的方法来检测它?
另外,我的列表包含负数和负数字的字符串,我该怎么办?
python ×10
django ×5
python-2.7 ×3
dictionary ×1
flask ×1
gpio ×1
list ×1
pip ×1
python-3.x ×1
readfile ×1
tuples ×1
view ×1