小编Man*_*tis的帖子

写入JSON会产生TypeError:dump()至少需要2个参数(给定1个)

我正在尝试加载json文件.更新并将其写回.这是我的尝试,但我收到一个错误:

TypeError:dump()至少需要2个参数(给定1个)

with open('employees.json') as data_file:
    employees = json.load(data_file)
    data_file.close

employees['employees'].append({
    "id": "2",
    "name": "Rob Croft",
    "key": "0003837852"})

with open('employees.json', 'w') as data_file:
    json.dump(employees)
    data_file.close
Run Code Online (Sandbox Code Playgroud)

python json

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

通过SSH连接MySQL数据库

我试图通过SSH将我的python程序连接到远程MySQL数据库.

我正在使用Paramiko用于SSH和SQLAlchemy.

这是我到目前为止:

import paramiko
from sqlalchemy import create_engine

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('host', port=port, username='user', password='pass')

engine = create_engine('mysql+mysqldb://user:pass@host/db')
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (2003, "Can't connect to MySQL server on 'mcsdev.croft-it.com' (60)")
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy paramiko

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

调试django-channels

我正在尝试将django-channels合并到我的下一个项目中,但我遇到调试问题.我已经尝试过pycharms调试器和pdb,但它没有遇到断点.

django pycharm django-channels

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

遍历queryset值

我写了一个小应用程序,允许用户创建自己的excel报告。我的一个查询将列表解包.values()以返回列。我遇到的问题是尝试迭代/引用返回的值,因为我不知道报告中包含哪些值。

这是我的尝试:

queryset = Claim.objects.filter(client=client, creation__year=year, creation__month=month)\
            .values(*values).order_by('id')

for i, c in enumerate(queryset):
    for ii, r in enumerate(c):
         print c
Run Code Online (Sandbox Code Playgroud)

我懂了

 TypeError: 'Claim' object is not iterable
Run Code Online (Sandbox Code Playgroud)

python django

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

Django-Haystack:'NoneType'对象没有属性'_default_manager'

我正在尝试向我的base.html添加一个haystack搜索,以便在我的网站上全局包含它.当我提交搜索时,它会出错

我正进入(状态:

Django-Haystack:'NoneType'对象没有属性'_default_manager'

我已将其添加到INSTALLED_APPS和我的urls.py. ./manage.py rebuild_index运行正常.

models.py:

class Site(models.Model):
    site_name = models.CharField(max_length=100, blank=False, null=False)
    site_manager = models.CharField(max_length=100, blank=False, null=False)
    address_1 = models.CharField(max_length=100, blank=False, null=False)
    address_2 = models.CharField(max_length=100, blank=True, null=True)
    address_3 = models.CharField(max_length=100, blank=True, null=True)
    town_city = models.CharField(max_length=100, verbose_name='Town/City')
    county = models.CharField(max_length=100, blank=False, null=False)
    postcode = models.CharField(max_length=100, blank=False, null=False)
    region = models.CharField(max_length=100, blank=True, null=True)
    tel = models.CharField(max_length=100, blank=False, null=False)
    email = models.EmailField(max_length=100, blank=False, null=False)

    creation = models.DateField(auto_now_add=True)
    last_modified = models.DateField(auto_now=True)

    def __unicode__(self):
        return self.site_name
Run Code Online (Sandbox Code Playgroud)

SiteIndex.py:

class SiteIndex(indexes.SearchIndex, indexes.Indexable):
    text = indexes.CharField(document=True, …
Run Code Online (Sandbox Code Playgroud)

django django-haystack django-1.9

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

djangorestframework-jwt未提供身份验证凭据

我正在尝试使用django rest_framework_jwt.我可以让它生成一个令牌,但当我尝试将其在标题中发送到受保护的视图时,我得到"未提供身份验证凭据".

我发送的标头的格式是:

"Authorization": "Token SomeRandomToken"
Run Code Online (Sandbox Code Playgroud)

settings.py

    INSTALLED_APPS = [
        ...
    rest_framework.authtoken
]

REST_FRAMEWORK = {
   'DEFAULT_AUTHENTICATION_CLASSES': (
       'rest_framework.authentication.TokenAuthentication',
       'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
   ),
   'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticated',
   ),
}
Run Code Online (Sandbox Code Playgroud)

views.py

class UserList(mixins.ListModelMixin,
               mixins.CreateModelMixin,
               generics.GenericAPIView):
    permission_classes = (permissions.IsAuthenticated,)
    authentication_classes = (JSONWebTokenAuthentication,)
    queryset = User.objects.all()
    serializer_class = UserSerializer
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework django-rest-framework-jwt

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

在python中插入SQLite主键

我正在尝试从我的 python 脚本中执行 SQLite 插入。

我收到一个错误:

table history has 4 columns but 3 values were supplied
Run Code Online (Sandbox Code Playgroud)

之所以有3而不是4,是因为第一个是我的ID。我假设当我将它声明为主键时,它会自动递增该值。如何插入身份证

.py:

c.execute("INSERT INTO history VALUES (?,?,?)", (q[0],t,in))
Run Code Online (Sandbox Code Playgroud)

。D b

CREATE TABLE history (id integer primary key, employeeID integer, time datetime, inout varchar);
Run Code Online (Sandbox Code Playgroud)

python sqlite

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

比较使用datepicker的两个日期

我有一个有两个日期字段的表单.我试图从两个输入中选择日期并将它们与JQuery进行比较.我遇到的问题是它返回NaN.

我想可能是因为typeof日期返回字符串.

$('#id_date_completed').change(function() {
    date_received = $("#id_date_received").val(); 
    date_completed = $("#id_date_completed").val(); 

    var diff = date_completed - date_received;
    var days = diff / 1000 / 60 / 60 / 24;

    console.log(days);
}
Run Code Online (Sandbox Code Playgroud)

编辑

我的问题不同于在javascript中获取2个日期之间的差异?因为我正在使用bootstrap-datepicker库.Arun P Johny的回答很完美

javascript jquery datepicker

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

Django:Obj.objects.all().values_list(list)

我想在django中创建一个用户定义的查询集.我已经尝试将值列表传递给.values_list().这给了我AttributeError:'list'对象没有属性'split'错误.有没有办法可以做到这一点?

col_list = ['col1', 'col2', 'col3']

Obj.objects.all().values_list(col_list)
Run Code Online (Sandbox Code Playgroud)

编辑:

col_list由用户选择的内容定义.在用户将列传递给视图之前,列或列名称的数量是未知的.这就是我使用列表的原因.

python django

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

为什么在Python的实例方法上使用类方法

我一直在努力让自己绕过类方法一段时间。我知道它们如何工作,但我不明白为什么要使用它们或不使用它们。

例如。

我知道我可以使用这样的实例方法:

class MyClass():
    def __init__(self):
        self.name = 'Chris'
        self.age = 27

    def who_are_you(self):
        print('Hello {}, you are {} years old'.format(self.name, self.age)

c = MyClass()
c.who_are_you()
Run Code Online (Sandbox Code Playgroud)

我也知道,通过使用类方法,可以调用who_are_you()而不创建类的实例:

    class MyClass():
        name = 'Chris'
        age = 27

        @classmethod
        def who_are_you(cls):
            print('Hello {}, you are {} years old'.format(cls.name, cls.age)

MyClass.who_are_you()
Run Code Online (Sandbox Code Playgroud)

我不明白为什么你会选择另一种方法

python

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

用jest和酶测试定制的反应方法

我试图在反应组件中测试一个方法.该组件是一个表单,应该测试handleSubmit()方法在单击提交按钮时被调用.我试过以下.

  it('handlesSubmit when submit button is clicked', () => {
    wrapper.find(Button).simulate('click');
    expect(wrapper.instance().handleSubmit).toHaveBeenCalled();
  })
Run Code Online (Sandbox Code Playgroud)

这给了一个错误jest.fn() value must be a mock function or spy.所以我尝试了这个:

it('handlesSubmit when submit button is clicked', () => {
    const handleSubmit = jest.fn();
    wrapper.find(Button).simulate('click');
    expect(handleSubmit).toHaveBeenCalled();
  })
Run Code Online (Sandbox Code Playgroud)

这个错误说 Expected mock function to have been called

reactjs jestjs enzyme

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

Django:ValueError:当前限制超过最大限制

我正在ValueError: current limit exceeds maximum limit使用我的Django应用程序.如果我从安装应用程序中删除haystack,它就会消失.我已经尝试升级haystack,降级haystack,删除与haystack相关的所有代码,但它仍然是一个问题.

完全追溯:

File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 312, in execute
    django.setup()
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/django/apps/registry.py", line 85, in populate
    app_config = AppConfig.create(entry)
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/django/apps/config.py", line 86, in create
    module = import_module(entry)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/Users/user/pyProjects/projects/env/lib/python2.7/site-packages/haystack/__init__.py", line 56, in <module>
    maxnofile[1]))
ValueError: current limit exceeds maximum limit
Run Code Online (Sandbox Code Playgroud)

安装的应用:

INSTALLED_APPS = (
    'django.contrib.admin', …
Run Code Online (Sandbox Code Playgroud)

python django

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

Django脆皮表单未向字段添加ID

我正在尝试向表单中的字段添加一个类。当我检查呈现的模板时,它缺少我添加的类。

形式:

from crispy_forms.helper import FormHelper, Layout
from crispy_forms.layout import Field

class OperationsCalendarForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        self.helper = FormHelper()
        self.helper.layout = Layout(
            Field('start', css_class="datetimepicker")
        )

        super(OperationsCalendarForm, self).__init__(*args, **kwargs)

    class Meta:
        model = OperationsCalendar
        exclude = ('creation', 'last_modified')
Run Code Online (Sandbox Code Playgroud)

表单.html

{{ form|crispy }}
Run Code Online (Sandbox Code Playgroud)

我得到:

<input class="dateinput form-control" id="id_start" name="start" type="text">
Run Code Online (Sandbox Code Playgroud)

django django-crispy-forms

0
推荐指数
1
解决办法
949
查看次数