小编AgD*_*ude的帖子

从中查询获取数据库的django模型对象

我有一个使用多个数据库的应用程序.一旦模型实例对象在内存中,我如何确定它来自哪个数据库?具体来说,我想知道这在模型类的方法中使用.

例:

class book(Models.model):
    newdate = models.DateField(default=date.today())
    type = models.CharField(
                            max_length=30,
                            choices=BOOK_TYPE,
                            default = 'novel',
                            )
    def get_current_student(self):
        if not hasattr(self,'_current_student'):
            try:
                self._current_student = clickerlog.objects.using(SELF.ORIGIN_DATABASE).get(book=self.pk,end__isnull = True).student
            except:
                self._current_student = none
        return self._current_student

class booklog(Models.model):
    start = models.DateTimeField(
                                 default=datetime.now(),
                                 verbose_name = 'start time'
                                 )
    end = models.DateTimeField(null=True,blank=True,)
    book = models.ForeignKey(book)
    student = models.ForeignKey(student,
                              limit_choices_to = {'isactive':True})
Run Code Online (Sandbox Code Playgroud)

django django-models

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

如何绑定到angularjs指令中的自定义事件?

我无法捕获像这样发送的事件:

document.body.dispatchEvent(event);
Run Code Online (Sandbox Code Playgroud)

下面的指令是在一个div,在身体内:

.directive('myDirective',function(){
  return {
    restrict: 'A',
    link: function(scope, element, attrs, pageCtrl){

      element.bind('myEvent', function(){
        console.log('caught my event!');
      });
    }
  };
});
Run Code Online (Sandbox Code Playgroud)

如果在div上使用triggerHandler发送事件,则此方法有效.

event = new Event('myEvent');
elem.triggerHandler(event);
Run Code Online (Sandbox Code Playgroud)

如何在指令内的文档主体上捕获自定义事件?

更新: 这是用于Cordova应用程序,带有现有插件,可在document.body上调度事件.那么有另一种方法可以在div的指令中捕获这些事件吗?

angularjs angularjs-directive

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

Django Filter Select_Related

使用select_related时,有没有人开发过一种方法来过滤外键表中的字段.

例如给出这些模型:

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)

class AuthorExtra(models.Model):
    author = models.ForeignKey(Author)
    type = models.ForeignKey(ExtraType)
    value = models.CharField(max_length = 24)
Run Code Online (Sandbox Code Playgroud)

我想要一种方法来缓存特定类型的所有相关AuthorExtra对象.

django

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

Django使用inital_data.json加载用户

我正在使用此问题中描述的方法为我的django项目加载初始用户.

这样可以保存用户权限,其中一个权限记录可能如下所示:

{
"pk": 56, 
"model": "auth.permission", 
"fields": {
  "codename": "change_somemodel", 
  "name": "Can change some model", 
  "content_type": 19
}
Run Code Online (Sandbox Code Playgroud)

用户记录:

{
"pk": 2, 
"model": "auth.user", 
"fields": {
  "username": "some_user", 
  "first_name": "", 
  "last_name": "", 
  "is_active": true, 
  "is_superuser": false, 
  "is_staff": true, 
  "last_login": "2011-09-20 06:36:54", 
  "groups": [], 
  "user_permissions": [
    10, 
    11, 
    19, 
    20, 
    21, 
    1, 
    2, 
    56,
    ...,
  ], 
  "password": "sha1$e4f29$fcec7f8bb930d98abdaaa3c0020220f413c4c1f5", 
  "email": "", 
  "date_joined": "2011-03-15 06:01:41"
}
Run Code Online (Sandbox Code Playgroud)

在将来的安装中是否有可能更改内容类型外键?如果添加模型或应用程序怎么样?例如,假设我在我的核心应用程序中添加了一个模型,然后我在settings.py中列出了一些可重用的应用程序,那些新安装会有不同的content_type_id吗?我可以在我的初始数据中包含content_type表,还是可能导致其他问题?

如果这不是将多个初始用户加载到数据库的可靠方法,那么有哪些替代方案?

django

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

Django形式前缀与基于类的通用视图

如何在Django 1.3中使用新的基于类的通用视图设置表单前缀关键字?设置前缀可防止呈现的HTML中出现重复的ID.这是记录在这里的形式API.

由于我使用AJAX加载了几种不同的表单,因此我遇到了重复标记的问题.

django django-forms django-generic-views

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

Django-gaurdian 或 Django-rulez 用于对象级权限

我正在为我正在处理的 django 项目实施行级(对象级)安全包。Django-gaurdian 和 django-rulez 似乎是可用于实现这一点的最活跃的包。

有没有人比较过两者,或者您使用过其中之一?请给我任何关于两者的好或坏反馈。Django-rules 具有在内存中存储一​​些信息以最小化数据库负载的好功能,您是否遇到过该功能的任何问题?

提前致谢。

django

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