标签: models

Rails:如何要求至少一个字段不为空

我知道我可以通过添加validates_presence_of :field到模型来要求字段.但是,如何要求至少一个字段是强制性的,而不需要任何特定字段?

提前致谢

- Deb

validation ruby-on-rails models

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

如何为两个设计模型使用不同的authentication_keys?

现在我有一个设计模型,它使用email作为authentication_key.

我想添加一个新的设计模型,它使用student_id作为authentication_key.

一些指南告诉我修改配置

"config.authentication_keys = [:email]"通过将:email替换为:student_id.

修改后,第一个模型登录总是失败,所以我想我必须分别为两个模型指出不同的authentication_keys.

我应该怎么做?

authentication models devise ruby-on-rails-3

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

控制器/模型/视图的Laravel命名约定是什么?

我记得你应该以一种特殊的方式命名你的控制器,模型和视图.无论是单数还是复数.我不记得哪些名称,但我在文档中找不到任何相关内容.

我猜它是这样的:

  • 控制器是复数
  • 意见是复数
  • 模型是单数的

我在正确的轨道上吗?

我明白这只是一个约定,你不要跟着他们,但我还是想知道正确的方法是什么.

views naming-conventions controllers models laravel

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

如何让两个模型互相引用Django

我有以下代码:

class Game(models.Model):
    title = models.CharField(max_length=50)
    summery = models.CharField(max_length=500)
    key = models.IntegerField()
    pin = models.CharField(max_length=12)
    complete = models.BooleanField()
    invite_sent = models.DateTimeField()
    on = models.ForeignKey(Member, blank = True) #<----


class Member(models.Model):
    email = models.CharField(max_length=100)
    color = models.CharField(max_length=11)
    game = models.ForeignKey(Game) #<----
Run Code Online (Sandbox Code Playgroud)

"on"外键链接到其中一个成员(转为它).游戏的所有成员都将他们的"游戏"外键设置为他们所在的游戏.问题是Django不会让我在声明它之前引用它,因为我不能同时声明它们......

编辑:为了清理,这是一个例子.如果有五个成员玩一个游戏,那么所有五个游戏都有外键.另一方面,游戏将有一个外键给特定成员转过来.

python django django-models models

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

在加载所有记录并调用fields_view_get函数后,动态触发Odoo fields_view_get

我想fields_view_get在做一些函数后动态触发函数.我重写该函数fields_view_get并返回我的结果.仅在第一次调用实际函数时才会影响XML视图.所以我需要刷新视图以影响arch的新值.

有没有办法让odoo视图fields_view_get在第一次调用函数后才能通过函数改变?

我的尝试:

# here fields view get changes the button string from getting arch
# I overrided the fields_view_get on event model and its get affected and works
# perfectly when I click on main menu Event.but not after the records loaded.

@api.multi
def send_mail_event(self):
    x = self.event_id.fields_view_get(view_id=None, view_type='form', toolbar=False, submenu=False)
    self.send_mail_event_reg_link(test=True)
    return x
Run Code Online (Sandbox Code Playgroud)

python models odoo odoo-view odoo-10

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

用于非数据库驱动模型的Django MVC模式?

我正在通过Django工作,到目前为止真的很喜欢它,但我有一个问题,我不知道解决它的典型方法是什么.

假设我有一个View,它应该在更新某个复杂的Python对象时更新,但是这个对象不是由数据库驱动的,比如它是由AJAX调用驱动的,或者是由用户直接驱动的.

这段代码在哪里?它还应该进入models.py ????

python django model-view-controller models

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

删除所有实例后,Django模型实例主键不会重置为1

我一直在研究我的Django Web应用程序的离线版本,并经常删除某个ModelX的模型实例.

我是从管理页面完成此操作并且没有遇到任何问题.该模型只有两个字段:名称和顺序,与其他模型没有其他关系.

新实例被赋予下一个可用的pk,当我删除所有实例时,添加一个新实例会产生pk = 1,这是我所期望的.

将代码在线移动到我的实际数据库我注意到情况并非如此.我需要更改模型实例,所以我删除了它们,但令我惊讶的是,主键不断增加而不重置为1.

使用我检查过的Django API进入数据库并且旧实例已经消失,但是即使添加新实例也会产生一个主键,它可以在最后一个被删除的实例停止的地方找到,而不是1.

想知道是否有人知道这里可能存在什么问题.

django primary-key models instances

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

Rails:验证has_many关联中parent_id的存在

我有一个项目资源,有很多任务.我想确保每个任务都有一个project_id添加validates_presence_of :project_id到任务模型.

但是,在使用任务创建新项目时,在记录保存之前,project_id将不可用,因此我无法使用validates_presence_of :project_id.

所以我的问题是,如何在任务模型中验证project_id的存在?我想确保每个任务都有父母.

...

class Project < ActiveRecord::Base

  has_many :tasks, :dependent => :destroy
  accepts_nested_attributes_for :tasks, :allow_destroy => true
Run Code Online (Sandbox Code Playgroud)

...

class Task < ActiveRecord::Base

 belongs_to :project
 validates_presence_of :project_id
Run Code Online (Sandbox Code Playgroud)

validation ruby-on-rails nested-forms models

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

如何确定Doctrine 2中的表关系是双向还是单向?

我正在Zend应用程序中从Doctrine 1.1.4升级到Doctrine 2.0.6.

目前,我正在研究实体之间的关联.在Doctrine 2的文档中,它说'关系可能是双向的或单向的.我很困惑这些术语在给定的上下文中意味着什么.

如何确定关系是单向还是双向?

感谢帮助.

php mapping zend-framework models doctrine-orm

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

Spacy链接错误

运行时:

import spacy
nlp = spacy.load('en')
Run Code Online (Sandbox Code Playgroud)

打印如下:

警告:找不到'en'的模型只加载'en'标记生成器.

/site-packages/spacy/data除init文件外,它是空的.所有文件路径只指向我的单个python安装.

任何有助于解决此问题的帮助.

谢谢!将

python models spacy

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