django将mysql数据库中的message表中的test1和test2字段随机2000条插入到product表中
时间: 2023-06-26 15:06:21 浏览: 102
Django使用Mysql数据库已经存在的数据表方法
可以使用Django的ORM(对象关系映射)来实现这个功能。首先,在models.py中定义Message和Product模型:
```python
from django.db import models
class Message(models.Model):
test1 = models.CharField(max_length=100)
test2 = models.CharField(max_length=100)
class Product(models.Model):
name = models.CharField(max_length=100)
```
然后,在views.py中编写视图函数:
```python
import random
from django.shortcuts import render
from .models import Message, Product
def insert_data(request):
# 从Message表中随机选择2000条数据
messages = Message.objects.order_by('?')[:2000]
# 将test1和test2字段插入到Product表中
for message in messages:
name = f"{message.test1} {message.test2}"
Product.objects.create(name=name)
return render(request, 'insert_data.html')
```
最后,在urls.py中定义URL路由:
```python
from django.urls import path
from .views import insert_data
urlpatterns = [
path('insert_data/', insert_data, name='insert_data'),
]
```
这样,当用户访问/insert_data/路径时,就会执行insert_data视图函数,将Message表中的test1和test2字段随机2000条插入到Product表中。
阅读全文