我正在尝试在 Cookeicutter 上建立一个网站,我创建了一个名为“bots”的新应用程序,并在模型中添加了一个名为 Trade 的类,该类列出了 2 个参数,“标题”和“单位”。迁移并运行服务器后,当我打开管理面板并单击面板内的“+ 添加”按钮以创建交易时(见图)。Django 网页返回此错误:
django.db.utils.ProgrammingError: relation "bot_trade" does not exist
LINE 1: ...."id", "bots_unit"."sell", "bots_unit"."buy" FROM "bots_unit...
Run Code Online (Sandbox Code Playgroud)
附加信息:使用 postgreSQL 在 docker 中运行我的 django
模型.py
from django.db import models
from datetime import date
#from django.contrib.auth.models import AbstractUser
#from .models import User
from django.urls import reverse
from django.urls import reverse_lazy
from django.conf import settings
import uuid
class Unit(models.Model):
TRADE_UNIT = (
('ETH', 'Ethereum'),
('BTC', 'Bitcoin'),
('LTC', 'Litecoin'),
('IOT', 'IOTA'),
('OMG', 'OmiseGo'),
('BCH', 'BitcoinCash'),
)
sell = …Run Code Online (Sandbox Code Playgroud) 我对 Postgres 和 Docker 还很陌生,但我正在用 Django 构建一个 web 应用程序,该应用程序在带有 postgresql 数据库的 docker 内运行。我正在尝试通过命令提示符或 pgweb 查看我的 Postgres 数据库。
不幸的是,我似乎根本找不到数据库,我尝试使用 postgres psql 终端命令,但我的数据库没有在里面列出。我的问题是,postgresql 数据库如何存储在 docker-compose 容器中。我需要手动进入容器然后查看数据库吗?我的最终目标是能够看到我在 postgresql 数据库中的所有表和数据的列表。
任何解释 postgresql 数据库如何与 docker-compose 交互的文档都将不胜感激。
谢谢!
我最近刚刚添加了 Pgweb,但这似乎不起作用
本地.YML
version: '2'
volumes:
postgres_data_local: {}
postgres_backup_local: {}
services:
django:
build:
context: .
dockerfile: ./compose/local/django/Dockerfile
depends_on:
- postgres
volumes:
- .:/app
environment:
- POSTGRES_USER=vicki
- USE_DOCKER=yes
ports:
- "8000:8000"
command: /start.sh
postgres:
build:
context: .
dockerfile: ./compose/production/postgres/Dockerfile
volumes:
- postgres_data_local:/var/lib/postgresql/data
- postgres_backup_local:/backups
environment:
- POSTGRES_USER=vicki
pgweb: …Run Code Online (Sandbox Code Playgroud) Postgres 数据库在重启后崩溃,尝试了几乎所有的方法,包括重新安装 postgres。它不会在 ubuntu 14.04 上启动,
$ systemctl status postgresql@9.6-main.service
Failed to issue method call: No such interface 'org.freedesktop.DBus.Properties' on object at path /org/freedesktop/systemd1/unit/postgresql_409_2e6_2dmain_2eservice
Run Code Online (Sandbox Code Playgroud)
$ pg_lsclusters
Ver Cluster Port Status Owner Data directory Log file
9.6 main 5432 down postgres /var/lib/postgresql/9.6/main /var/log/postgresql/postgresql-9.6-main.log
Run Code Online (Sandbox Code Playgroud)
$ sudo 服务 postgresql 启动
* Starting PostgreSQL 9.6 database server
* Failed to issue method call: Unit postgresql@9.6-main.service failed to
load: No such file or directory. See system logs and 'systemctl status
postgresql@9.6-main.service' for details.
Run Code Online (Sandbox Code Playgroud)
$ ps …
我正在使用 Django 2.0 和最新版本的 Wagtail CMS。我对 Wagtail 很陌生,我正在尝试查询 EventIndexPage(即 EventPage)的子级,并将它们显示在我的主页上。
我正在尝试在下面的家庭应用程序 models.py 中使用这一行 python:
special_events = EventIndexPage.objects.descendant_of(inclusive=False)
Run Code Online (Sandbox Code Playgroud)
但它返回:
return getattr(self.get_queryset(), name)(*args, **kwargs)
TypeError: descendant_of() missing 1 required positional argument: 'other'
Run Code Online (Sandbox Code Playgroud)
当我尝试将“EventPage”放在“inclusive=false”之前时,我收到类型错误,因为它是数组而不是整数。
文档:http ://docs.wagtail.io/en/v2.0/reference/pages/queryset_reference.html
家庭应用程序的 Models.py:
from django.db import models
from event.models import EventIndexPage
from wagtail.core.models import Page
from wagtail.core.fields import RichTextField
from wagtail.admin.edit_handlers import FieldPanel
class HomePage(Page):
body = RichTextField(blank=True)
special_events = EventIndexPage.objects.descendant_of(inclusive=False)
content_panels = Page.content_panels + [
FieldPanel('body', classname="full"),
]
Run Code Online (Sandbox Code Playgroud)
事件应用程序的 Models.py
from django.db import models
from wagtail.core.models …Run Code Online (Sandbox Code Playgroud) 试图在 docker 中运行我的 django 服务器,但 postgres 端口已被使用?当我运行“docker-compose up”时,我收到此错误:
django.db.utils.OperationalError: could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?
ERROR: Service 'web' failed to build: The command '/bin/sh -c python manage.py migrate' returned a non-zero code: 1
Run Code Online (Sandbox Code Playgroud)
须藤服务 postgresql 状态
返回:
9.6/main (port 5432): online
Run Code Online (Sandbox Code Playgroud)
sudo lsof -nP | 听听
返回:
postgres 15817 postgres 3u IPv4 1022328 0t0 TCP 127.0.0.1:5432
Run Code Online (Sandbox Code Playgroud)
我尝试运行“sudo kill -9 15817”,但 docker-compose up 仍然收到相同的错误。
Docker-compose.yml
version: …Run Code Online (Sandbox Code Playgroud) django ×4
postgresql ×4
cookiecutter ×2
docker ×2
containers ×1
python ×1
ubuntu ×1
wagtail ×1