小编Pau*_*aul的帖子

在django应用程序中记录事件

我需要在Django 1.4应用程序中记录一些业务事件.例如,当用户发送refferal电子邮件或用户进行购买时.等等.此事件日志将用于某些总线性分析.在电子商务应用中有这样做的最佳实践吗?可能是服务还是django模块?我以前从未开发过这样的系统,我需要一些建议.

python django

4
推荐指数
1
解决办法
1206
查看次数

设置可选用户名 django 用户

我必须将客户信息存储在客户表中。我们不需要存储它们的usernamepassword。但是为了创建客户组和用户,我使用了 djangoUserGroup模型。这是我用来存储基本信息的客户模型。

class Customer(models.Model):
    """
    The Customer 
    """
    UID = models.TextField(blank=True, null=True, db_index=True)
    fk_user = models.ForeignKey(User, primary_key=False)
    fk_details = models.ForeignKey(UserDetails, primary_key=False)
    fk_contact_details = models.ForeignKey(ContactDetails, primary_key=False)
    ...
Run Code Online (Sandbox Code Playgroud)

这是一个创建用户对象的类方法,稍后我将使用它来存储客户信息:

from django.contrib.auth.models import User
def create_user(self, req_dict):
    '''
    Create a new User 
    '''
    try:
        user=User.objects.create_user(**req_dict)
        user.save()
    except:
        return None
    return user
Run Code Online (Sandbox Code Playgroud)

但是这段代码抛出了一个IntegrityError,这是因为我们没有在req_dict

req_dict = {'first_name': u'John', 'last_name': u'Smith', 'email': u'john.smith@xyz.com'}
Run Code Online (Sandbox Code Playgroud)

创建新用户时存储用户名可选的方法是什么?

django python-3.x

4
推荐指数
1
解决办法
2010
查看次数

如何简化表的css样式

我有一个我想改进的CSS代码.实际上,此代码是从Chrome样式检查器复制粘贴的.但我坚持尝试使用嵌套将其简化为一个规则以获得"干净"的样式:

.table > thead > tr > th, .table > thead > tr > td,
.table > tbody > tr > th, .table > tbody > tr > td,
.table > tfoot > tr > th, .table > tfoot > tr > td {
  border-top: 1px solid #000;
}
Run Code Online (Sandbox Code Playgroud)

有没有办法让它更简单?

css

4
推荐指数
1
解决办法
178
查看次数

在django-admin页面中禁用django上下文处理器

如何为自定义模板上下文处理器排除Django django-admin页面?

django django-templates

3
推荐指数
2
解决办法
499
查看次数

获取mysql表中的字段数

如何使用PHP或只是某种mysql查询获取mysql表中的字段数(сolumns)?有没有办法做到这一点不SELECT * FROM table_namemysql_num_fields()?也许有一种方法可以使用一个mysql查询?

php mysql sql

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

将数据从 django middleware.process_view 传递到模板上下文

我有一个自定义中间件,在其 process_view 期间我得到了一些令牌。我需要将此令牌传递给渲染结果 html。

我认为 context_processor 是修改上下文的好地方,但看起来很难将一些数据从中间件传递到处理器中。

但似乎 process_view 和上下文处理器通信的唯一方法是请求对象。如果将任何字段设置为请求,我会收到“WSGIRequest”对象不支持项目分配“错误。这是一段代码:

def process_view(self, request, view_func, view_args, view_kwargs):
   ...
   with log(request, view_func.__name__, info) as id:

      request['TOKEN_ID'] = logger.get().get_id() #here is an error
      response = view_func(request, *view_args, **view_kwargs)
Run Code Online (Sandbox Code Playgroud)

所以,看起来我做错了什么。有没有办法沟通 middleware.process_view 和 context_processor ?或者我应该改变另一种方式将数据从中间件传递到html?

python django

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

将 ForeignKey 字段呈现为表单中的文本字段,但保留外键行为

这个问题看起来很傻很简单,但我真的想不通。我有一个带有另一个模型的外键字段的模型,可以说:

class Parent:
  name = models.CharField()

class Child:
  name = models.CharField()
  e_id = models.IntegerField()
  parent = models.ForeignKey(Parent)
Run Code Online (Sandbox Code Playgroud)

我使用默认的 django 形式渲染 Child 实例,没有任何添加。inlineformset_factory(Parent, Child, extra=1)如果重要的话我会使用。

关键时刻:django 呈现parent(这是一个外键)作为下拉输入。我需要在表单中显示父母的 id 作为一个简单的文本输入而不是下拉列表。但是我想保留外键的所有行为并使 django 验证 parent_id 输入的内容是专利模型的有效和现有 ID。

我试图创建一个像这样的 ChildForm:

class ChildForm(django.forms.ModelForm):
    class Meta:
        model = Child
        fields = ('name', 'e_id', 'parent')

    parent = CharField(label=_("Parent"), required=True)
Run Code Online (Sandbox Code Playgroud)

并像这样使用它:

inlineformset_factory(Parent, Child, extra=1)
Run Code Online (Sandbox Code Playgroud)

它像我想要的那样呈现为炭火。但是这里不再有 id 到实例的验证和智能转换。如果我写了不正确的 parent_id,我会得到“无法分配“u'21”:“Children.parent”必须是“Parent”实例。” 错误。

所以我觉得我做错了什么。我找到了这个答案(Django form ForeignKey database field not as dropdown),但它看起来像某种monkeypatching,我不确定这是一种django方式来做到这一点。

那么正确的方法是什么呢?我使用 Django 1.6。

forms django

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

Java Spring实现用户身份验证的常用方法

我是Java新手,我尝试使用Spring框架编写第一个Web应用程序(我对django/python和sinatra/ruby​​有一些经验).我需要实现用户身份验证系统,并且不知道正确执行此操作的最佳方法是什么.我应该使用Spring Security吗?还是有另外一种方法?

java spring spring-mvc

0
推荐指数
1
解决办法
866
查看次数

标签 统计

django ×5

python ×2

css ×1

django-templates ×1

forms ×1

java ×1

mysql ×1

php ×1

python-3.x ×1

spring ×1

spring-mvc ×1

sql ×1