繁体   English   中英

Django可以与global_settings.LANGUAGES建立ManyToMany关系吗?

[英]Can Django have a ManyToMany relationship with global_settings.LANGUAGES?

我需要我的用户能够说出他们说的语言,所以自然而然地我开始:

class Language(models.Model):
    name = models.CharField(max_length=128)

class UserProfile(models.Model):
    languages = models.ManyToManyField("Language", related_name="users")

但是后来我发现了这一点:

from django.conf.global_settings import LANGUAGES

我想使用它,如果只是为了遵循DRY原理。 问题是,我不知道如何允许用户使用多种语言。

怎么样...

class LanguageSpoken(models.Model):
     user = models.ForeignKey("UserProfile")
     language = models.CharField(max_length = 2, choices = LANGUAGES)

我假设您不需要保留有关该语言的任何其他数据(例如说该语言的国家/地区),您只希望用户列出他们使用的语言。 如果确实需要保留其他数据,则必须使用多对多关系。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM