我创建了一个扩展的用户模型,可以在注册页面上使用。这两个定制模型是“ 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) 我试图找到一个 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)因为后者在漩涡括号之外。我最接近的是这种模式:(?<=\{)[^\(].*\(.*?\).*(?=\}). 此模式在第一个、第二个和第四个示例上匹配,但与花括号之间的所有内容匹配,而不仅仅是括号及其内容。
我正在尝试创建一个可以更新全局环境变量中选定值的函数。更复杂的是,这些值位于嵌套列表中,并且位置的深度可能会有所不同。
这是一个例子:
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 <- TRUE到L$Foo$Bar$VAR <- FALSE和L$Lorem$Ipsum$Dolor$VAR <- TRUE到L$Lorem$Ipsum$Dolor$VAR <- FALSE。如您所见,嵌套列表中的变量名称在VAR我要更新的所有变量中都是相同的。
因此,我正在寻找一个可以更新VAR嵌套列表中所有变量的函数,无论有多深VAR。
EDIT VAR将更新为相同的值。
对于ggplot2图,hjust和vjust是相对于整个图定义的对齐函数。因此,当它们应用于轴标签时,它们不是相对于轴线定义的。
但是,相对于轴线调整轴标题更为自然。
具体来说,我正在寻找一种左对齐x轴标题以及上对齐和旋转y轴标题的方法。
怎样才能做到这一点呢?
我在R中有一个ggplot,它在x轴上显示三个标签.默认情况下,这些标签居中.但是,我正在寻找一种方法来左对齐第一个标签,居中第二个标签,右对齐第三个标签.链接的照片显示了我尝试复制的确切结果.有关如何在R中执行此操作的任何建议?
标签对齐我试图复制.