我有一个与Book有外键关系的Person模型.本书有很多领域,但我最关心的是"作者"(标准的CharField).
话虽如此,在我的PersonAdmin模型中,我想使用"list_display"显示"book.author".我已经尝试了所有这些明显的方法(见下文),但似乎没有任何效果.有什么建议?
class PersonAdmin(admin.ModelAdmin):
list_display = ['book.author',]
Run Code Online (Sandbox Code Playgroud) 我正在使用以下查询(为Internet清理)向Postgresql数据库添加一个新的"NOT NULL"列:
ALTER TABLE mytable ADD COLUMN mycolumn character varying(50) NOT NULL;
Run Code Online (Sandbox Code Playgroud)
每次运行此查询时,都会收到以下错误消息:
Run Code Online (Sandbox Code Playgroud)ERROR: column "mycolumn" contains null values
我很难过.我哪里错了?
注意:我主要使用pgAdmin III(1.8.4),但是当我从终端内运行SQL时收到了同样的错误.
我尝试了以下,但我没有成功:
ALTER TABLE person ALTER COLUMN dob POSITION 37;
Run Code Online (Sandbox Code Playgroud) 我有一个books带有returned_date列的表.我希望看到过去一周发生的所有图书的结果.
有什么想法吗?我尝试做一些日期数学,但Postgres对我的尝试并不满意.
我想使用Python创建一个Word文档,但是,我希望尽可能多地重用现有的文档创建代码.我目前正在使用XSLT生成HTML文件,我以编程方式将其转换为PDF文件.但是,我的客户现在要求以Word(.doc)格式提供相同的文档.
到目前为止,我没有太多运气找到解决这个问题的方法.是否有人知道可能有助于解决此问题的开源库(或*gulp*专有解决方案)?
注意:所有可能的解决方案必须在Linux上运行.我相信这消除了pywin32.
请考虑以下ModelAdmin.在这种情况下,我希望在"无"字段集和Notes字段集之间显示内联"Book"UI.那可能吗?
class AuthorAdmin(admin.ModelAdmin):
inlines = [BookInline]
fieldsets = (
(None, {
'fields': ('author_name', 'date_of_birth')
}),
('Notes', {
'fields': (['notes'])
}),
)
Run Code Online (Sandbox Code Playgroud) 以下查询将显示已在"book"表中复制的所有Dewey Decimal数字:
SELECT dewey_number,
COUNT(dewey_number) AS NumOccurrences
FROM book
GROUP BY dewey_number
HAVING ( COUNT(dewey_number) > 1 )
Run Code Online (Sandbox Code Playgroud)
但是,我想要做的是让我的查询显示与重复条目相关联的作者的名称("book"表和"author"表由"author_id"连接).换句话说,上面的查询将产生以下结果:
dewey_number | NumOccurrences
------------------------------
5000 | 2
9090 | 3
Run Code Online (Sandbox Code Playgroud)
我希望显示的结果类似于以下内容:
author_last_name | dewey_number | NumOccurrences
-------------------------------------------------
Smith | 5000 | 2
Jones | 5000 | 2
Jackson | 9090 | 3
Johnson | 9090 | 3
Jeffers | 9090 | 3
Run Code Online (Sandbox Code Playgroud)
非常感谢您提供的任何帮助.并且,如果它发挥作用,我正在使用Postgresql数据库.
更新:请注意"author_last_name"不在"book"表中.
我正在运行Django 1.0,我即将部署我的应用程序.因此,我将把DEBUG设置更改为False.
话虽如此,我仍然希望在发生错误时将堆栈跟踪包含在我的500.html页面上.通过这样做,用户可以复制并粘贴错误,并轻松地通过电子邮件将其发送给开发人员.
有关如何最好地解决这个问题的任何想法?
我在我的Django模型上有一个自定义属性,它返回一个Person的全名:
class Person(models.Model):
first_name = models.CharField(max_length=30)
last_name = models.CharField(max_length=30)
def _get_full_name(self):
return "%s %s" % (self.first_name, self.last_name)
full_name = property(_get_full_name)
Run Code Online (Sandbox Code Playgroud)
当我创建一个查询时,我想引用该属性.例如:
people = Person.objects.all().values_list('full_name')
Run Code Online (Sandbox Code Playgroud)
不幸的是,Django会产生以下FieldError:
FieldError:无法将关键字'full_name'解析为字段
简而言之,是否可以通过values_list()方法访问自定义属性?如果没有,有没有人有任何关于如何最好地解决这个问题的建议?
由于将OSX升级到版本10.7.3,当我尝试运行Django"syncdb"命令时,我从Postgresql 8.4.2收到以下psycopg2错误:
psycopg2.OperationalError: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?
Run Code Online (Sandbox Code Playgroud)
我可以毫无意外地打开psql,但是当我尝试运行"pg_ctl status"时,我也收到了这个错误:
pg_ctl: could not open PID file "/Library/PostgreSQL/8.4/data/postmaster.pid": Permission denied
Run Code Online (Sandbox Code Playgroud)
有相关性吗?
django ×5
postgresql ×5
sql ×4
python ×3
alter-table ×2
django-admin ×2
database ×1
modeladmin ×1
ms-word ×1
properties ×1
psycopg2 ×1
stack-trace ×1
syncdb ×1
templates ×1
xml ×1
xslt ×1