Django写一个完整的项目,使用Model定义每个人的信息,实现通过用户名对应每个用户的信息,看到用户自己的指标
时间: 2024-03-12 15:48:00 浏览: 19
好的,我了解了您的问题。首先,您需要定义一个Django Model来存储每个人的信息。以下是一个简单的模型示例,您可以根据自己的需求进行修改:
```python
from django.db import models
class Person(models.Model):
username = models.CharField(max_length=50)
age = models.IntegerField()
height = models.FloatField()
weight = models.FloatField()
# 其他字段
def __str__(self):
return self.username
```
接下来,您需要创建一个视图函数来显示每个用户的信息。以下是一个简单的示例视图函数:
```python
from django.shortcuts import render, get_object_or_404
from .models import Person
def user_info(request, username):
person = get_object_or_404(Person, username=username)
context = {
'person': person
}
return render(request, 'user_info.html', context)
```
在这个视图函数中,我们使用`get_object_or_404`函数来获取对应的用户信息。然后,我们将用户信息传递给一个模板,以便在网页上显示。下面是一个示例模板:
```html
<!DOCTYPE html>
<html>
<head>
<title>User Info</title>
</head>
<body>
<h1>{{ person.username }}'s Info</h1>
<ul>
<li>Age: {{ person.age }}</li>
<li>Height: {{ person.height }}</li>
<li>Weight: {{ person.weight }}</li>
<!-- 其他字段 -->
</ul>
</body>
</html>
```
在这个模板中,我们使用模板语言来显示用户信息。
最后,您需要将视图函数映射到URL。以下是一个简单的示例URL配置:
```python
from django.urls import path
from .views import user_info
urlpatterns = [
path('user/<str:username>/', user_info, name='user_info'),
]
```
在这个URL配置中,我们将`user_info`视图函数映射到`/user/<username>/`路径,其中`<username>`是动态的用户名参数。
现在,您可以通过访问`/user/<username>/`路径来查看每个用户的信息了。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)