Loading [MathJax]/jax/output/CommonHTML/config.js
社区首页 >问答首页 >PostgreSQL表没有创建。无法将Django连接到数据库?

PostgreSQL表没有创建。无法将Django连接到数据库?
EN

Stack Overflow用户
提问于 2019-08-28 03:17:18
回答 1查看 797关注 0票数 0

我正在向Heroku部署Django应用程序。当我在我部署的应用程序中的用户注册表单上创建一个新用户时,它说用户是创建的,但在那之后,当我试图通过该用户登录时,它说用户不存在。

因此,错误必须在我正在使用的PostgreSQL数据库中。我下载了PostgreSQL并创建了一个名为myblog的新数据库,并将其连接到我的Django应用程序。但是,当我运行heroku run python manage.py makemigrations时,我的数据库表不会更新,仍然是空的。

以下是我的数据库设置:

代码语言:javascript
代码运行次数:0
复制
DATABASES = {
    'default': {
       'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'myblog',
        'USER': 'postgres',
        'PASSWORD': os.environ.get('PASSWORD'),
        'HOST': 'https://mydjangoblog.herokuapp.com',
        'PORT': '5432',
    },
}

这是我的完整settings.py file

代码语言:javascript
代码运行次数:0
复制
import os
import django_heroku

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
TEMPLATE_DIR = os.path.join(BASE_DIR, 'templates')
STATIC_DIR = os.path.join(BASE_DIR,'static')
MEDIA_DIR = os.path.join(BASE_DIR,'myblog/media')

SECRET_KEY = os.environ.get('SECRET_KEY')

DEBUG = True

ALLOWED_HOSTS = ['mydjangoblog.herokuapp.com']

INSTALLED_APPS = [
    'blogapp.apps.BlogappConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'storages',
]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

ROOT_URLCONF = 'myblog.urls'

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [TEMPLATE_DIR,],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

WSGI_APPLICATION = 'myblog.wsgi.application'

DATABASES = {
    'default': {
       'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'myblog',
        'USER': 'kcjpsannhsia8bbr',
        'PASSWORD': 'd11bdf3cdec79aa8ad73266e3aasjasjagsjagsjggsja0e61f8758b2526ce09e',
        'PORT': '5432',
    },
}

AUTH_PASSWORD_VALIDATORS = [
    {
        'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
        'OPTIONS':{
            'max_similarity': 1,
        }
    },
    {
        'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
    },
    {
        'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
    },
]

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'UTC'

USE_I18N = True

USE_L10N = True

USE_TZ = True

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_TMP = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
]
os.makedirs(STATIC_TMP, exist_ok=True)
os.makedirs(STATIC_ROOT, exist_ok=True)

MEDIA_URL = '/media/'
MEDIA_ROOT = MEDIA_DIR

LOGIN_REDIRECT_URL = 'blogapp:post_list'
LOGIN_URL = 'login'

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = os.environ.get('EMAIL_USER')
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_PASS')

AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID')
AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY')
AWS_STORAGE_BUCKET_NAME = os.environ.get('AWS_STORAGE_BUCKET_NAME')


AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = None
AWS_LOCATION = 'media'

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

django_heroku.settings(locals())

我已经在我的环境中安装了psycopg2。我用的是Django 2.2为什么这不管用?我怎么才能修好它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-28 05:00:21

您的数据库将不会运行在与代码相同的计算机上,因此使用https://mydjangoblog.herokuapp.com作为PostgreSQL主机是没有意义的。

Heroku DATABASE_URL,包含您需要连接的所有内容。它的结构类似于

代码语言:javascript
代码运行次数:0
复制
postgres://<user>:<password>@<host>:<port>/<database>

与Django一起使用此方法的最简单方法是使用dj-database-urldjango-heroku。选择一个并将其添加到依赖项文件中,然后相应地修改您的设置。

使用第二个库添加

代码语言:javascript
代码运行次数:0
复制
import django_heroku
django_heroku.settings(locals())

settings.py的最底层。这将负责设置数据库和其他一些特定于Django的东西,如Whitenoise和日志记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57691151

复制
相关文章
C# 如何在Excel 动态生成PivotTable
Excel 中的透视表对于数据分析来说,非常的方便,而且很多业务人员对于Excel的操作也是非常熟悉的,因此用Excel作为分析数据的界面,不失为一种很好的选择。那么如何用C#从数据库中抓取数据,并在
牛嗷嗷
2018/03/30
1.1K0
如何使用Java创建数据透视表并导出为PDF
数据透视分析是一种强大的工具,可以帮助我们从大量数据中提取有用信息并进行深入分析。而在Java开发中,可以借助PivotTable,通过数据透视分析揭示数据中的隐藏模式和趋势。本文将介绍如何使用Java来构建PivotTable以及实现数据透视分析,并将其导出为PDF。
葡萄城控件
2023/10/16
2630
基于纯前端类Excel表格控件实现在线损益表应用
财务报表也称对外会计报表,是会计主体对外提供的反映企业或预算单位一定时期资金、利润状况的会计报表,由资产负债表、损益表、现金流量表或财务状况变动表、附表和附注构成。财务报表是财务报告的主要部分,不包括董事报告、管理分析及财务情况说明书等列入财务报告或年度报告的资料。
葡萄城控件
2022/10/28
3.1K0
搭载AI之后的表格插件又有哪些新的改变
摘要:本文由葡萄城技术团队于博客园原创并首发。葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。
葡萄城控件
2023/10/14
2030
我可以在不source脚本的情况下将变量从Bash脚本导出到环境中吗
有没有一种方法可以通过只执行 export.bash 而不 source 它获取 $VAR?
程序熵
2023/09/25
1800
我可以在不source脚本的情况下将变量从Bash脚本导出到环境中吗
Java在Excel中进行数据分析
前一段时间淘宝出了一个“淘宝人生”的模块,可以看从注册淘宝账号至今的消费记录,仔细想了想,现在微信、淘宝这些APP好像都喜欢出这种记录使用者的支付、消费情况的功能。不过这个显示消费记录的功能的确让人觉得方便很多。这样大家就可以随时随地的查看以前的消费记录,有时候需要查账,翻一翻手机就能看见钱都去哪里了,而且每一笔钱的流向都可以看得非常清楚。既然这个东西这么好用,那可不可以我也搞一个类似的分析工具,这样就可以用它来记录生活中的点点滴滴。由于本人的工作性质,对Excel比较熟悉,首先想到的就是可不可以用一个表格可视化工具来实现这个功能。
葡萄城控件
2023/10/14
2510
Java在Excel中进行数据分析
精读《Excel JS API》
Excel 现在可利用 js 根据单元格数据生成图表、表格,或通过 js 拓展自定义函数拓展内置 Excel 表达式。
黄子毅
2022/03/15
2.9K0
CTO不写代码,真的可以吗?
导读:CTO 在公司里是干嘛的?到底写不写代码?该不该做代码评审(Code Review),亲力亲为给程序员做出榜样?还是把握一下大方向,设计架构,管管程序员,提供一些培训?
IT阅读排行榜
2018/10/25
1.5K0
CTO不写代码,真的可以吗?
Excel 技巧篇-选择性粘贴,只粘贴数值,不粘贴公式
最开始是这样的,我有一行数据,要每一个都除以1000,单位就是k,我想一个一个改就太麻烦了,想到了公式和宏编程,宏编程很强大,但是比较麻烦,于是就用公式了。
小蓝枣
2020/09/23
1.5K0
选择性粘贴:粘贴公式,值,转置
我们都知道CTRL C, CTRL V 但是我们有时候并不是要完全的粘贴 我们可能只是要粘贴这个值,去掉公式 或者只是要粘贴这个格式 或者是要横竖转换 这时候你要用到选择性粘贴 首先 还是先告诉你们
但老师
2022/03/22
2.6K0
选择性粘贴:粘贴公式,值,转置
数据透视表上线!如何在纯前端实现这个强大的数据分析功能?
在Office三大办公套件中,Excel可能是功能最多、最难精通的那一款了。从日常的表格录入到复杂的业务数据统计分析,Excel仿佛一位外表平平无奇,实力却深不可测的武林高手。熟练使用Excel往往能在日常工作中获得事半功倍的效果,而这里所谓的“熟练”除了熟悉大量公式、图表绘制等操作外,还要掌握一项非常重要的特性——数据透视表。 所谓数据透视表,就是将原始的明细数据表中涉及的各组关联数据进行分类汇总的产物。用户可以按照不同的组合方式对原始数据进行处理。例如下面这样的销售业绩原始数据:
葡萄城控件
2022/09/23
2K0
使用Excel切片器切换图表
如下图1所示,根据切片器中的选择来显示图表。它通过工作表change事件运行,在堆积柱形图和簇状柱形图之间切换。其技巧是创建两个图表,一个用于每个区域中的一个,另一个用于总计或所有区域。这样,可以在区域和总计之间切换。
fanjy
2022/11/16
1K0
使用Excel切片器切换图表
手把手教你用Pandas透视表处理数据(附学习资料)
来源:伯乐在线 - PyPer 本文共2203字,建议阅读5分钟。 本文重点解释pandas中的函数pivot_table,并教大家如何使用它来进行数据分析。 介绍 也许大多数人都有在Excel中使用数据透视表的经历,其实Pandas也提供了一个类似的功能,名为pivot_table。虽然pivot_table非常有用,但是我发现为了格式化输出我所需要的内容,经常需要记住它的使用语法。所以,本文将重点解释pandas中的函数pivot_table,并教大家如何使用它来进行数据分析。 如果你对这个概念
数据派THU
2018/01/29
3.2K0
手把手教你用Pandas透视表处理数据(附学习资料)
在没有外链情况下,如何提高PR值?
外链是提高PR值的有利方式,但现在外链建设愈发困难,各家都对自己的网站进行链接屏蔽,即使你的外链建设成功,在代码状态下依然是Nofollow状态,所以seoer对外链格外关注。
蝙蝠侠IT
2021/03/22
5390
在没有外链情况下,如何提高PR值?
前端html源码可以不暴露接口吗?为什么?
html属于的前端编程中一项,接口是必须要暴露的,起码基于现在的技术框架是无法避免的,因为只要是有关html的代码只需要在浏览器里面右键点击查看源代码所有的相关的html代码都会原封不动的展示出来,所以前端页面的很多样式特效只要有一家有新的变化出来,紧接着很快就会被抄袭拷贝了,样式和风格太容易拿来使用了,所以想在加密只能在数据接口上做做文章,现在web安全已经成为一个非常热点的问题,因为随着网页应用的普及化网页安全将会越来被重视。
程序员互动联盟
2019/03/07
3.2K0
前端html源码可以不暴露接口吗?为什么?
Excel VBA操作切片器切换显示不同的图表
在《使用Excel切片器切换图表》中,我们看到可以根据切片器中的选择来显示图表,但只是给出了简略的介绍。这段时间抽空研究了一下,给出制作过程。
fanjy
2022/11/16
2.3K0
Excel VBA操作切片器切换显示不同的图表
java深拷贝的实现方式_接口可以创建对象吗
Cloneable接口与Serializable接口都是定义接口而没有任何的方法。Cloneable可以实现对象的克隆复制,Serializable主要是对象序列化的接口定义。很多时候我们涉及到对象的复制,我们不可能都去使用setter去实现,这样编写代码的效率太低。JDK提供的Cloneable接口正是为了解决对象复制的问题而存在。Cloneable结合Serializable接口可以实现JVM对象的深度复制。
全栈程序员站长
2022/11/04
1.5K0
AI原来还可以在无监督的情况下进行双语翻译?
该文章介绍了两种在不需要平行文本的情况下进行神经机器翻译的方法。第一种方法是使用无监督学习,通过创建双语词典来实现。第二种方法是使用去噪自回归,在翻译过程中插入噪声,然后反向翻译以消除噪声。这些方法可以提高翻译的准确性,并且可以用于跨语言匹配任务。"
人工智能的秘密
2017/12/27
6860
AI原来还可以在无监督的情况下进行双语翻译?
点击加载更多

相似问题

如何剪切和粘贴PivotTable?

13

创建PivotTable时出错

11

在PivotTable中复制VBA值

10

Excel PivotTable更新-不创建PivotCache (VBA)

20

在PivotTable中显示%

33
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文