每当我尝试将数据提交到Flask表单时,我都会收到以下错误:
Method Not Allowed The method is not allowed for the requested URL.
Run Code Online (Sandbox Code Playgroud)
我认为问题出在return redirect(url_for('database'))我正在做的事情上.我也试过return render_template('database.html)了.一旦表单条目已提交到数据库,我正在尝试调用数据库页面.
我的代码的相关部分如下:
@app.route('/entry', methods=['GET', 'POST'])
def entry_page():
if request.method == 'POST':
date = request.form['date']
title = request.form['blog_title']
post = request.form['blog_main']
post_entry = models.BlogPost(date = date, title = title, post = post)
db.session.add(post_entry)
db.session.commit()
return redirect(url_for('database'))
else:
return render_template('entry.html')
@app.route('/database')
def database():
query = []
for i in session.query(models.BlogPost):
query.append((i.title, i.post, i.date))
return render_template('database.html', query = query)
Run Code Online (Sandbox Code Playgroud)
entry.html是......
THIS IS THE BLOG …Run Code Online (Sandbox Code Playgroud) 我已经使用SQLAlchemy设置了一个本地Postgres DB,并且无法提交我的第一个条目.我继续犯这个错误......
ProgrammingError: (ProgrammingError) relation "user" does not exist
LINE 1: INSERT INTO "user" (name, email, facebook_id, facebook_token...
Run Code Online (Sandbox Code Playgroud)
看起来这些字段与数据库中的字段不匹配.我正在尝试使用flask-migrate进行迁移,但是,当我运行时,$ python app.py db migrate我收到此错误...
raise util.CommandError("No such revision '%s'" % id_)
alembic.util.CommandError: No such revision '39408d6b248d'
Run Code Online (Sandbox Code Playgroud)
最好删除所有内容并从头开始,因为我似乎已经破坏了我的数据库设置和/或迁移,但我不知道如何.
更新:数据库现在已经开始工作(我删除并再次创建它).但是,我仍然在尝试运行迁移时遇到同样的错误,结果是"没有这样的修订'39408d6b248d'指的是从一个不相关的项目迁移.我重新安装了flask-migrate但同样的错误.
我有一个Django应用程序,我正在尝试部署到Heroku.我已经密切关注了Heroku文档,没有任何实际问题.但是,在推送到Heroku之后,当我在线访问应用程序时,我看到"内部服务器错误".我没有在终端(下面)看到任何明显的错误.这是我第一次使用Heroku,所以可能在某个地方出现了一个菜鸟错误.感谢帮助.
(venv)suraj-kapoors-computer:listing surajkapoor$
(venv)suraj-kapoors-computer:listing surajkapoor$
(venv)suraj-kapoors-computer:listing surajkapoor$ pip freeze > requirements.txt
(venv)suraj-kapoors-computer:listing surajkapoor$ venv
-bash: venv: command not found
(venv)suraj-kapoors-computer:listing surajkapoor$ git init
Initialized empty Git repository in /Users/surajkapoor/Desktop/listing/.git/
(venv)suraj-kapoors-computer:listing surajkapoor$ git add .
(venv)suraj-kapoors-computer:listing surajkapoor$ git commit -m "listings"
[master (root-commit) 62e03eb] listings
38 files changed, 939 insertions(+), 0 deletions(-)
create mode 100644 .gitignore
create mode 100644 Procfile
create mode 100644 listing/__init__.py
create mode 100644 listing/settings.py
create mode 100644 listing/urls.py
create mode 100644 listing/wsgi.py
create mode 100644 manage.py
create …Run Code Online (Sandbox Code Playgroud) 为什么这个命令不起作用?
ALTER TABLE candidate ADD COLUMN blocked_companies ARRAY;
Run Code Online (Sandbox Code Playgroud) 部署在本地运行良好的Web应用程序时,我始终遇到500错误...
Error: Server Error
The server encountered an error and could not complete your request.
If the problem persists, please report your problem and mention this error message and the query that caused it.
Run Code Online (Sandbox Code Playgroud)
除了我的应用程序已成功部署之外,日志没有告诉我其他任何信息。
11:50 PM Host: appengine.google.com
11:50 PM Application: suraj-kapoor; version: 1
11:50 PM
Starting update of app: suraj-kapoor, version: 1
11:50 PM Getting current resource limits.
11:50 PM Scanning files on local disk.
11:50 PM Cloning 2 static files.
11:50 PM Cloning 6 application files.
11:50 …Run Code Online (Sandbox Code Playgroud) 我正在使用https://devcenter.heroku.com/articles/django教程在Heroku上设置一个Django应用程序,我遇到以下错误运行heroku run python manage.py syncdb
ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
Run Code Online (Sandbox Code Playgroud)
在本地同步时我得到相同的错误.我已经阅读了StackOverflow上的所有线程,但没有解决这个问题.settings.py的相关部分:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': '', # Or path to database file if using sqlite3.
# The following settings are not used with sqlite3:
'USER': '',
'PASSWORD': '',
'HOST': '', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
'PORT': '', …Run Code Online (Sandbox Code Playgroud) 这应该是基本的,但我无法与Flask一起玩.Angular和Flask具有相同的可变插值语法{{ variable }},根据博客文章,我可以使用管道来区分这两者,但下面会导致读取错误no filter named 'angular'
<!DOCTYPE html>
<html ng-app>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.min.js"></script>
<script type="text/javascript" src= "http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js"></script>
</head>
<body>
<label>{{ yourName | angular }}</label>
<input type="text" ng-model="yourName" placeholder="Enter a name here">
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我对Django非常陌生,并且拥有一个具有ManyToMany字段的模型。我正在尝试tag在html中显示名称。如果我{{ listing.tag }}在模板中使用,则会得到类似的内容<django.db.models.fields.related.ManyRelatedManager object at 0x10916f410>,{{ listing.tag.name }}并且什么也不会显示。
这是我的模型:
from django.db import models
from django_extensions.db.fields import AutoSlugField
class Tag(models.Model):
name = models.CharField(max_length=100)
slug = AutoSlugField(populate_from='name', unique=True)
def __unicode__(self):
return self.name
class Listings(models.Model):
listing = models.CharField(max_length=50)
description = models.CharField(max_length=500)
email = models.EmailField(max_length=75)
tag = models.ManyToManyField(Tag)
pub_date = models.DateTimeField(auto_now=True)
def __unicode__(self):
return self.listing
Run Code Online (Sandbox Code Playgroud)
如何显示标签名称?提前致谢。
我的 PSQL 表类型数组中有一个列,我们将其称为 列。tags我有一个具有整数类型的 Python 列表,我们将其称为categories。
如果标签列具有一个或多个与类别数组匹配的整数,如何运行 SQLAlchemy 查询以便返回表中的任何行?
附件在以下代码中不起作用,也不是response_type应该显示的.我也尝试过使用Python的Slack客户端,但完全相同的事情正在发生.
def send_message(channel_id, text):
params = {
"token" : token,
"username" : "NEW BOT",
"channel" : channel_id,
"text" : text,
"response_type": "ephemeral",
"attachments": [{ "text":"This is some text" }]
}
headers = {'content-type': 'application/json'}
slack_api = 'https://slack.com/api/chat.postMessage'
requests.get(slack_api, json=params, headers=headers)
return
@app.route('/', methods=['GET', 'POST'])
def main():
if sc.rtm_connect():
sc.rtm_read()
text = request.args.get("text")
channel_id = request.args.get("channel_id")
send_message(channel_id, text)
return Response(), 200
Run Code Online (Sandbox Code Playgroud) 这是一个令人尴尬的简单问题.我正在尝试理解如何在我正在构建的第一个Django应用程序中合并一个简单的Python函数.这是我的views.py文件...
from django.shortcuts import render
from noticeboard.models import Listings
from django.views import generic
from django.template import Context
class IndexView(generic.ListView):
template_name = 'listings/index.html'
context_object_name = 'latest_listings'
def get_queryset(self):
return Listings.objects.order_by('-pub_date')
class DetailView(generic.DetailView):
model = Listings
template_name = 'listings/listings_detail.html'
context_object_name = 'listing'
Run Code Online (Sandbox Code Playgroud)
在清单模型中,我有以下字段:
listing = models.CharField(max_length=50)
Run Code Online (Sandbox Code Playgroud)
我想写一个函数来确保列表变量都是大写 - 我知道如何编写函数 - 我只是不知道如何将它合并到views.py文件中!
python ×5
django ×4
postgresql ×4
flask ×2
heroku ×2
angularjs ×1
many-to-many ×1
python-2.7 ×1
slack-api ×1
sqlalchemy ×1