目前我正在使用Django创建一个网站。我的网站的目的是将个人信息存储到用户。对于用户隐私和安全问题。我试图让它(管理员)无法看到他们在Text或CharFields中显示的内容,这些内容会显示在他们自己的个人主页上,以便让用户感觉更舒服地将他们的信息放在网站上。我试过加密就像密码一样:
password = forms.CharField(widget=forms.PasswordInput())
但它不会让我或用户向表单添加任何内容。此外,旧字段显示为对用户加密。我希望它的方式是在我的管理页面上看起来加密,但对于用户的页面,它应该是普通文本。所以我的一个问题是如何才能完成这一壮举?或者甚至可能吗?
答案 0 :(得分:0)
我建议只是从管理页面中排除私人字段。这在Django documentation中有描述,需要在模块中创建一个名为models.py
的文件(exclude
所在的目录)。在该文件中,您需要创建一个与您的模型同名的类,但使用后缀' Admin',并且在该类下面有一个USE [xxDB]
GO
declare @currentMonth int = 1,
@currentYear int = 2014,
@newExpireMonth int =6,
@newExpireYear int =2018,
@actualDate varchar(30),
@fromDate varchar(30),
@toDate varchar(30)
declare @Sql varchar(8000)
begin
create table #MytempTab1
(
actualNewDate varchar(30),
newUserId int
)
insert into #MytempTab1
select
(RIGHT( '00' + CAST(ISNULL(ss.ExpiryMonth, '01') as varchar(2)),
2)+'-01'+'-'+RIGHT('0000' + CAST(ISNULL(ss.ExpiryYear, '2014') as
varchar(4)), 4)) as actualNewDate, ss.UserId as newUserId
from
dbo.UserProfile u
inner join dbo.webpages_UsersInRoles wur on u.UserId=wur.UserId
inner join dbo.SpreedlySubscriber ss on u.UserId=ss.UserId
where
(wur.RoleId=4)
end
set @Sql= '
select
ss.FirstName as FirstName, ss.LastName as LastName,
ss.ExpiryMonth as ExpMonth, ss.ExpiryYear as ExpYear
from dbo.UserProfile u
inner join dbo.webpages_UsersInRoles wur on u.UserId=wur.UserId
inner join dbo.SpreedlySubscriber ss on u.UserId=ss.UserId
inner join #MytempTab1 mt on ss.UserId= mt.newUserId
inner join dbo.[Order] odr on ss.OrderId=odr.OrderId
where (wur.RoleId=4) and '
set @fromDate = RIGHT('00' + CAST(@currentMonth as varchar(2)), 2) +'-01'+'-'+ RIGHT('0000' + CAST(@currentYear as varchar(4)), 4)
set @toDate= RIGHT('00' + CAST(@newExpireMonth as varchar(2)), 2) +'-01'+'-'+ RIGHT('0000' + CAST(@newExpireYear as varchar(4)), 4)
set @Sql= @Sql+ '(CONVERT(date, mt.actualNewDate, 110) BETWEEN CONVERT(date, '+@fromDate+', 110) AND CONVERT(date, '+@toDate+', 110))'
print (@Sql)
EXEC(@Sql)
drop table #MytempTab1
选项,其中包含字段的名称喜欢隐藏。请参阅文档以了解具体实现。
正如评论中所提到的,存储实际密码的不是一个好习惯。我从问题的背景中假设这是一个不那么敏感但又隐私的数据。