小编Dav*_*ave的帖子

创建新日期时如何解决“类型对象'datetime.datetime'没有属性'timedelta'”?

我正在使用 Django 和 Python 3.7。我正在尝试通过向现有日期时间添加秒数来计算新的日期时间。从这里 -在 Python 中将 N 秒添加到 datetime.time 的标准方法是什么?,我以为我可以做到

new_date = article.created_on + datetime.timedelta(0, elapsed_time_in_seconds)
Run Code Online (Sandbox Code Playgroud)

其中“article.created_on”是日期时间,“elapsed_time_in_seconds”是整数。但上述结果导致

type object 'datetime.datetime' has no attribute 'timedelta'
Run Code Online (Sandbox Code Playgroud)

错误。我错过了什么

python django datetime python-3.x

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

在 PyCharm 中运行测试如何导致“模型类未声明显式 app_label”错误?

我使用的是 Django、Python 3.7 和 PyCharm 2018.3.5。我试图通过右键单击测试名称并选择“运行测试:'测试名称'”来在 PyCharm 中运行测试。这会导致以下错误

RuntimeError: Model class appname.models.Label doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
Run Code Online (Sandbox Code Playgroud)

这是有问题的模型,位于我的 models.py 文件的顶部......

class Label(models.Model):
    name = models.CharField(max_length=200)

    def __str__(self):
        return self.name

    class Meta:
        unique_together = ("name",)
Run Code Online (Sandbox Code Playgroud)

非常奇怪的是,如果我在 PyCharm 之外运行测试(例如在终端命令提示符下使用“python manage.py test”),一切都会正常运行。所以问题似乎是 PyCharm 的一些配置错误。我不清楚如何进一步解决这个问题。以下是我的项目目录结构...

appname
    __init__.py
    __pycache__
    admin.py
    apps.py
    fixtures
    management
    migrations
    models.py
    services.py
    static
    templates
    tests.py
    views.py
manage.py
templates
venv
appname_project
Run Code Online (Sandbox Code Playgroud)

编辑:我将环境变量编辑为以下内容

PYTHONUNBUFFERED=1
DJANGO_DEVELOPMENT=true
DJANGO_SETTINGS_MODULE=appname_project.settings
Run Code Online (Sandbox Code Playgroud)

这是因为我的设置文件是特定于环境的,所以我的开发文件的路径是

appname_project/settings/dev.py
Run Code Online (Sandbox Code Playgroud)

但即使添加上述结果也会导致相同的错误。

python testing django pycharm python-3.x

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

如何计算 Django 中两个日期之间的平均差异?

使用 Django 和 Python 3.7。我正在尝试编写一个查询来给出两个日期之间差异的平均值。我的模型中有两个字段,都是“DateTimeField”,我尝试像这样计算平均差异

everything_avg = Article.objects.aggregate(
    avg_score=Avg(F('removed_date') - F('created_on'), output_field=models.DateTimeField())
).filter(removed_date__isnull=False)
return everything_avg
Run Code Online (Sandbox Code Playgroud)

但在运行上述命令时我最终收到此错误

AttributeError: 'dict' object has no attribute 'filter'
Run Code Online (Sandbox Code Playgroud)

获得平均值的正确方法是什么?

django datetime date python-3.x

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

如何在命令行无头运行 selenium-side-runner?

我在 Mac Mojave 上使用 selenium-side-runner v 3.11.0。我想在无头 Chrome 浏览器中运行测试,但是,添加“--headless”似乎不起作用。当我跑

PATH=/Users/davea/Documents/workspace/starter_project/selenium/dev/:$PATH selenium-side-runner --headless -c "browserName=chrome" myTest.side
Run Code Online (Sandbox Code Playgroud)

测试仍在我的机器上运行的 Chrome 窗口中打开。(我希望测试每次都能新鲜运行,不受我可能为自己使用的任何打开的 Chrome 窗口的影响)。

selenium command-line google-chrome headless selenium-webdriver

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

为什么我收到“错误 TS1005: ';'” 预期的。” 运行简单的 Jasmine 测试时出错?

我正在使用 Angular 7。我编写了一个真正简单的测试类,src/app/pastebin.ts,

export class Pastebin {
    id: number;
    title: string;
    language: string;
    paste: string;

    constructor(values: Object = {}) {
        Object.assign(this, values);
  }
}

export const Languages = ["Ruby","Java", "JavaScript", "C", "Cpp"];
Run Code Online (Sandbox Code Playgroud)

然后一个真正简单的 Jasmine 规范 src/app/pastebin.spec.ts 来测试它,

/* pastebin.spec.ts */

//import the Pastebin class
import { Pastebin } from './pastebin';

describe('Pastebin', () => {
    it('should create an instance of Pastebin',() => {
        expect(new Pastebin()).toBeTruthy();
    });

})
Run Code Online (Sandbox Code Playgroud)

但是当我去运行测试时,我收到一些错误,看起来像是与我所做的事情相关的任何错误......

localhost:Pastebin davea$ ng test
 10% building modules 1/1 modules 0 active30 08 2019 …
Run Code Online (Sandbox Code Playgroud)

jasmine karma-jasmine angular angular7

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

如何正确配置我的应用程序以使用 Django 电话号码字段模块?

我正在使用 Django 2.0、Python 3.7 和 Django PhoneNumber 字段——https: //github.com/stefanfoulis/django-phonenumber-field并因此设置了我的模型......

class Coop(models.Model):
    name = models.CharField(max_length=250, null=False)
    type = models.ForeignKey(CoopType, on_delete=None)
    address = AddressField(on_delete=models.CASCADE)
    enabled = models.BooleanField(default=True, null=False)
    phone = PhoneNumberField(null=True)
    email = models.EmailField(null=True)
    web_site = models.TextField()
Run Code Online (Sandbox Code Playgroud)

我已经在我的 settings.py 文件中添加了这个...

PHONENUMBER_DB_FORMAT="RFC3966"
Run Code Online (Sandbox Code Playgroud)

但是,当我使用以下 JSON 提交表单时...

{
        "name": "3999",
        "type": {
            "name": "Coworking Space"
        },
        "address": {
            "street_number": "222",
            "route": "1212",
            "raw": "222 W. Merchandise Mart Plaza, Suite 1212",
            "formatted": "222 W. Merchandise Mart Plaza, Suite 1212",
            "latitude": 41.88802611,
            "longitude": -87.63612199,
            "locality": { …
Run Code Online (Sandbox Code Playgroud)

python django validation phone-number python-3.x

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

如何将 React 汉堡菜单放置在网站的右上角?

我想构建一个汉堡菜单以显示在我的 React 16.13.0 应用程序的移动版本上。我正在关注本教程 - https://www.zacwillmington.com/how-to-add-a-hamburger-menu-to-your-website/。所以我像这样创建了我的导航栏组件

import React, { Component } from 'react';
import { NavLink } from 'react-router-dom';
import HamburgerMenu from 'react-hamburger-menu';
import {isMobile} from 'react-device-detect';
import './NavBar.css';

class NavBar extends Component {
    constructor(){
        super()
        this.state = {
            open: false,
            hideOrShowHambugerDropDown: 'nav'
        }
    }

    handleClick = () => {
        this.setState({open: !this.state.open});
    }

    displayHamburgerMenu = () => {
        return (
            <HamburgerMenu
                    isOpen={this.state.open}
                    menuClicked={this.handleClick.bind(this)}
                    width={18}
                    height={15}
                    strokeWidth={1}
                    rotate={0}
                    color='black'
                    borderRadius={0}
                    animationDuration={0.5}
                />
        )
    }

    displayNavBar = () => {
        return …
Run Code Online (Sandbox Code Playgroud)

css css-position reactjs hamburger-menu

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

ReactTags 是否适用于 React 16.12 应用程序?

我想按照此处的说明在我的 React 16.12 应用程序中使用 ReactTags - https://www.npmjs.com/package/react-tag-input。我安装了 react-dnd 11.1.1 。下面是我的 package.json 文件

{
  "name": "client",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "@testing-library/jest-dom": "^4.2.4",
    "@testing-library/react": "^9.4.0",
    "@testing-library/user-event": "^7.2.1",
    "bootstrap": "^4.4.1",
    "jquery": "^1.9.1",
    "react": "^16.12.0",
    "react-bootstrap": "^1.0.0-beta.17",
    "react-device-detect": "^1.12.1",
    "react-dnd": "^11.1.1",
    "react-dnd-html5-backend": "^11.1.1",
    "react-dom": "^16.12.0",
    "react-hamburger-menu": "^1.2.1",
    "react-native-flash-message": "^0.1.15",
    "react-router-dom": "^5.1.2",
    "react-scripts": "3.3.1",
    "react-tag-input": "^6.4.3",
    "typescript": "^3.8.3"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "NODE_ENV=development react-scripts build",
    "build:prod": "NODE_ENV=production react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {
    "extends": …
Run Code Online (Sandbox Code Playgroud)

tags reactjs react-dnd

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

如何从 sqlcmd 提示符运行单个 sql 命令?

在 SQL Server 中,如果我想从命令行运行脚本,我可以这样做

/opt/mssql-tools/bin/sqlcmd -S $DB_HOST -U $DB_USER -P $DB_PASS -d $DB_NAME -i myscript.sql
Run Code Online (Sandbox Code Playgroud)

是否可以在没有脚本的情况下仅运行单个命令并获得结果?例如,如果我只是想跑

SELECT 1
Run Code Online (Sandbox Code Playgroud)

我该如何从命令行执行此操作?

sql-server command-line sqlcmd

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

在 React/Bootstrap 4 中,禁用按钮以防止重复表单提交的正确方法是什么?

我正在使用 React 16.13 和 Bootstrap 4。我有以下表单容器......

const FormContainer = (props) => {
    ...
  const handleFormSubmit = (e) => {
    e.preventDefault();
    CoopService.save(coop, setErrors, function(data) {
      const result = data;
      history.push({
        pathname: "/" + result.id + "/people",
        state: { coop: result, message: "Success" },
      });
      window.scrollTo(0, 0);
    });
  };

  return (
    <div>
      <form className="container-fluid" onSubmit={handleFormSubmit}>
        <FormGroup controlId="formBasicText">
    ...
          {/* Web site of the cooperative */}
          <Button
            action={handleFormSubmit}
            type={"primary"}
            title={"Submit"}
            style={buttonStyle}
          />{" "}
          {/*Submit */}
        </FormGroup>
      </form>
    </div>
  );
Run Code Online (Sandbox Code Playgroud)

是否有标准方法来禁用提交按钮以防止重复提交表单?问题是,如果从服务器返回的表单中有错误,我希望再次启用该按钮。下面是我上面引用的“CoopService.save”...

...
  save(coop, setErrors, …
Run Code Online (Sandbox Code Playgroud)

button form-submit reactjs bootstrap-4 disable

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