代码报错

来源:10-2 新闻前台

慕的地7209688

2018-09-28

错误 C:UsersAdministratorDesktoplask_news>python flask_newss.py
Traceback (most recent call last):
File “flask_newss.py”, line 27, in
class News(db.Document):
File “flask_newss.py”, line 34, in News
created_at = db.DatetimeField(default=datetime.now())
AttributeError: ‘MongoEngine’ object has no attribute ‘DatetimeField’

代码 from datetime import datetime
from flask import Flask, render_template, flash, redirect, url_for, abort, request
from flask_mongoengine import MongoEngine

app = Flask(name)
app.config[‘MONGODB_SETTINGS’] = {
‘db’: ‘mongo_news’,
‘host’: ‘127.0.0.1’,
‘port’: 27017
}
db = MongoEngine(app)

NEWS_TYPES = (
(‘推荐’, ‘推荐’),
(‘百家’, ‘百家’),
(‘本地’, ‘本地’),
(‘图片’, ‘图片’)
)

class News(db.Document):
’’’ 新闻模型 ‘’'
title = db.StringField(required=True, max_length=200)
content = db.StringField(required=True, choices=NEWS_TYPES)
news_type = db.StringField(required=True)
img_url = db.StringField()
is_valid = db.BooleanField(default=True)
created_at = db.DatetimeField(default=datetime.now())
updated_at = db.DatetimeField(default=datetime.now())

meta = {
    'collection': 'news',
    'ordering': ['-created_at']
}

@app.route(’/’)
def index():
’’’ 新闻首页 ‘’'
news_list = News.objects.all()
return render_template(‘index.html’, news_list=news_list)

@app.route(’/cat/’)
def cat(name):
’’’ 新闻类别页 ‘’'
news_list = News.objects.all()
return render_template(‘cat.html’, news_list=news_list)

@app.route(’/detail/’)
def detail(pk):
’’’ 新闻详情页 ‘’'
news_list = News.objects.all()
return render_template(‘detail.html’, news_list=news_list)

if name == ‘main’:
app.run(debug=True)
开始还一直报错News.objects没找到后来重新敲一遍这个错误就没了现在报的错误不知道怎么改而且报错的那几行代码还一直警告。警告内容见图。图片描述
警告内容Unresolved attribute reference ‘DatetimeField’ for class ‘MongoEngine’ 更少… (Ctrl+F1)
Inspection info: This inspection detects names that should resolve but don’t. Due to dynamic dispatch and duck typing, this is possible in a limited but useful number of cases. Top-level and class-level items are supported better than instance items.

写回答

1回答

NavCat

2018-09-29

DateTimeField

注意大小写

0
3
NavCat
回复
慕的地7209688
注意大小写
2018-09-29
共3条回复

Python操作三大主流数据库-MySQL+MongoDB+Redis

一次实战同时掌握Python操作MySQL,MongoDB,Redis 三大数据库使用技巧

2024 学习 · 376 问题

查看课程