小编Bas*_*sil的帖子

postgresql超级用户没有密码提示

在Ubuntu 12.04上安装PostgreSQL 9.1后,我为"postgres"超级用户帐户设置了密码.我希望所有用户在登录时都必须输入密码.这就是为什么我这样配置pg_hba.conf:

#Database administrative login by Unix domain socket
local   all             postgres                                md5

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
Run Code Online (Sandbox Code Playgroud)

我做了这些更改后重新启动了postgresql.当我这样做时,psql -U testuser我被要求输入密码,但是当我使用"postgres"帐户登录时,psql -U postgres我没有得到密码提示并登录.如果我强制提示密码,psql -U postgres -W我可以通过输入正确的密码登录或者根本不输入任何东西.输入错误的密码会被拒绝.

任何人都可以向我解释为什么会这样吗?

在一个相关的说明:我看到很多例子,其中人们使用ident作为"postgres"用户的身份验证方法,认为要成为"postgres"用户需要机器的root密码.我假设推理是,如果攻击者获得root访问权限,那么无论如何都要完成.我更喜欢使用密码登录,一个与root密码不同.我喜欢为不同的东西设置不同的密码.这合理吗?

输出 grep '^[^#]' pg_hba.conf

local   all             postgres                                md5
local   all             all                                     md5
host    all             all             127.0.0.1/32            md5
Run Code Online (Sandbox Code Playgroud)

database authentication postgresql postgresql-9.1

13
推荐指数
2
解决办法
2万
查看次数

如何使用Eclipse编译32位

我目前正在64位Ubuntu Pc上用c ++编写一个小程序.默认情况下,eclipse会为64位架构编译程序.因为我想在我的服务器上使用我的小程序,它仍然是32位,我需要能够编译我的32位程序.我怎么能在日食中做到这一点?我一直在摆弄设置,但没有任何效果......

干杯

c++ eclipse 32bit-64bit

11
推荐指数
1
解决办法
1万
查看次数

选择开始页面django-cms

django-cms始终使用最顶层的页面作为开始/登陆页面.我现在想要一个看起来像这个foo-home-bar的导航和home作为登陆页面.

一种方法是在/重定向到/ home添加一个虚拟页面,但这对我来说似乎有点粗糙.有没有更好的解决方案?我不介意改变cms本身的代码.

django django-urls django-cms

7
推荐指数
1
解决办法
5847
查看次数

subprocess.popen()的实时输出而不是逐行输出

我目前正在用C++编写的python中重写一个小包装器程序.它从文件中提取文件并以另一种格式将其打包.

在C++中,我需要运行的系统命令的输出是"实时",即状态栏和实时显示的某些命令的百分比指示器.使用python,我将每个'百分比'单独地放在屏幕上(因为我逐行读取).这是一个例子:这是一个状态栏在python版本中的样子(这一直持续到100).在C++中,它确实会更新自己.

| (02/100)\rImporting AVC-H264: |                    | (03/100)\rImporting AVC-H264: |                       | (04/100)\rImporting AVC-H264: |=
Run Code Online (Sandbox Code Playgroud)

那是相应的python代码:

p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
for line in iter(p.stdout.readline, ""):
   print line,
Run Code Online (Sandbox Code Playgroud)

关于如何使它看起来像在C++中的任何想法?

python subprocess popen

5
推荐指数
1
解决办法
4874
查看次数

由self ["name"] =文件名混淆

我正在阅读这本名为"潜入Python"的精彩书.到目前为止,一切都对我有意义,但以下方法给我留下了一些问题.它在关于初始化类的章节中:

class FileInfo(UserDict):
    "store file metadata"
    def __init__(self, filename=None):
        UserDict.__init__(self)
        self["name"] = filename
Run Code Online (Sandbox Code Playgroud)

这只是我没有得到的最​​后一行.我现在看到它的方式,调用对象有一个列表,其项目"name"被赋予传递的参数的值.但这对我来说没有意义,因为我认为你只能通过整数访问列表索引.该书对此行说了以下内容:"您将参数文件名指定为此对象的名称键的值." 名称是否是每个对象定义的另一个变量(如doc)?如果是的话,为什么可以这样访问?

python self

3
推荐指数
1
解决办法
781
查看次数

最佳实践:为每个用户创建一个新表是个好主意?

我目前正在编写一个小的django应用程序,以便对框架进行一些练习.该应用程序允许用户登录,写入条目并查看其条目列表.我应该如何将条目分配给创建它们的用户?为每个新用户创建一个表并在那里保存条目是一个好主意,还是应该在条目模型中添加一个额外的字段(例如'created_by')并过滤要在列表中显示的项目?

需要考虑的一件事是,用户绝对不应该看到自己以外的条目(例如某些人使用应用程序写日记).这是两种方式吗?

我以前更新用过数据库,所以我很感激为什么一种方法比另一种更好.

django database-design

2
推荐指数
1
解决办法
2270
查看次数