小编Chr*_*ian的帖子

ValueError:“在使用此多对多关系之前,需要具有字段“ id”的值”

我创建了一个扩展的用户模型,可以在注册页面上使用。这两个定制模型是“ Cristin”和一个名为“ Rolle”(人员在组织中的角色)的多对多字段。

添加多对多字段后,收到以下错误消息:/ accounts / signup / –“ Userextended:username_that_I_registered_with ”中的ValueError 必须具有字段“ id”的值,此多对多关系才能使用。

我已经在Google上搜索了三个小时,看来解决方案是在保存模型之前在User ID上使用commit = False。但是,我是Django和Python的新手,在查明应该在哪里编写代码时遇到了麻烦,到目前为止,我的尝试均未成功。如果可以帮助我解决此问题,请也通过代码提供解决方案。

我的models.py文件:

class User(auth.models.User,auth.models.PermissionsMixin):
def __str__(self):
    return "@{}".format(self.username)

class Personrolle(models.Model):
    id = models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')
    persrolle = models.CharField(max_length = 30, verbose_name="Role")
    def __str__(self):
        return self.persrolle

class Userextended(models.Model):
    id = models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    cristin = models.IntegerField(blank=True, null=True)
    rolle = models.ManyToManyField(Personrolle)

    def __str__(self):
        return self.user.username

...
Run Code Online (Sandbox Code Playgroud)

我的forms.py文件:

...

from django import forms …
Run Code Online (Sandbox Code Playgroud)

python django

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

匹配两个大括号之间的所有括号

我试图找到一个 RegEx 模式,只要这些括号在{和之间,我就可以匹配所有括号(及其内容)}

例子:

  • {foo (i,j) bar} 应该匹配 (i,j)
  • {(i,j) foo (k,l) bar (m,n,o)}应该匹配(i,j)(k,l)(m,n,o)
  • foo (i,j) bar 不应该匹配任何东西,因为字符串不在花括号之间。
  • {foo (i,j) bar} (k,l)应该匹配(i,j)但不是(k,l)因为后者在漩涡括号之外。

我最接近的是这种模式:(?<=\{)[^\(].*\(.*?\).*(?=\}). 此模式在第一个、第二个和第四个示例上匹配,但与花括号之间的所有内容匹配,而不仅仅是括号及其内容。

regex r

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

无论深度如何,都更新函数中的全局嵌套列表变量

我正在尝试创建一个可以更新全局环境变量中选定值的函数。更复杂的是,这些值位于嵌套列表中,并且位置的深度可能会有所不同。

这是一个例子:

L <- list()

L$Foo <- list()
L$Foo$Bar <- list()
L$Foo$Bar$VAR <- TRUE

L$Lorem <- list()
L$Lorem$Ipsum <- list()
L$Lorem$Ipsum$Dolor <- list()
L$Lorem$Ipsum$Dolor$VAR <- TRUE
Run Code Online (Sandbox Code Playgroud)

我试图更新L$Foo$Bar$VAR <- TRUEL$Foo$Bar$VAR <- FALSEL$Lorem$Ipsum$Dolor$VAR <- TRUEL$Lorem$Ipsum$Dolor$VAR <- FALSE。如您所见,嵌套列表中的变量名称在VAR我要更新的所有变量中都是相同的。

因此,我正在寻找一个可以更新VAR嵌套列表中所有变量的函数,无论有多深VAR

EDIT VAR将更新为相同的值。

r

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

将轴标题与轴边缘完美对齐

对于ggplot2图,hjustvjust是相对于整个图定义的对齐函数。因此,当它们应用于轴标签时,它们不是相对于轴线定义的。

但是,相对于轴线调整轴标题更为自然。

具体来说,我正在寻找一种左对齐x轴标题以及上对齐和旋转y轴标题的方法。

怎样才能做到这一点呢?

对齐的轴标题

r ggplot2

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

R中的ggplot:如何在轴标签上单独设置对齐

我在R中有一个ggplot,它在x轴上显示三个标签.默认情况下,这些标签居中.但是,我正在寻找一种方法来左对齐第一个标签,居中第二个标签,右对齐第三个标签.链接的照片显示了我尝试复制的确切结果.有关如何在R中执行此操作的任何建议?

标签对齐我试图复制.

r ggplot2

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

标签 统计

r ×4

ggplot2 ×2

django ×1

python ×1

regex ×1