django - 如何根据用户选择更改语言?
问题描述
我使用Rosetta翻译了我的网站。我有两种语言;en 和 tr。
我language
在模型中创建了一个字段UserProfile
,并在导航栏中创建了一个按钮来更改用户的语言选择。
我想要的是;用户的语言选择将是网站的语言。
例如; 当用户单击TR
按钮时,在每个页面中re_path
变为http://127.0.0.1:8000/tr/或用户单击EN
按钮re_path
变为http://127.0.0.1:8000/en/ 。
我怎样才能做到这一点?
网址.py
urlpatterns += i18n_patterns(
re_path('', include('customer.urls')),
re_path('', include('register.urls')),
re_path('', include('approvals.urls')),
)
模型.py
class UserProfile(AbstractUser, UserMixin):
username = models.CharField(max_length=500, unique=True)
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
...
language = models.CharField(max_length=250)
解决方案
推荐阅读
- r - 当 SelectorGadget 不适用时抓取数据表的表头数据?(刮擦基础)
- laravel - 在 Laravel 5.8 中更新个人资料照片时删除以前的照片
- laravel - 图像未呈现 DOM pdf
- html - 移动响应式图片库
- django - 为什么docker-compose在运行时不将文件复制到virtualbox机器?“python:无法打开文件'manage.py':[Errno 2]没有这样的文件或目录。”]
- python-3.x - 在 Windows 上使用 Python 进行区域选择和屏幕捕获
- java - 如何在Java中查找单个整数中的奇数或偶数
- java - 怎么修 ')',
, 或逗号预期,得到'1' - php - 在 Python 中解密使用 Halite/Libsodium 在 PHP 中加密的字符串
- java - Collection.sort by Date 不适用于所有设备