简体   繁体   English

将行添加到数据库django

[英]add row to database django

i have a project for managing students i can read or edit rows of my database , but i can't add new data to it and i don't have any idea ..... some help :( 我有一个管理学生的项目,我可以读取或编辑数据库的行,但是我无法向其中添加新数据 ,而且我也不知道...一些帮助:(

html : html

<form action="/school_manager/students/add/" method="post">
        {% csrf_token %}
        <label for="add_first_name">First Name</label><br/>
        <input type="text" class="form-control" name="add_first_name" id="add_first_name" />
<input type="submit" class="btn btn-primary btn-lg" value="Add"/>

there is a html form with a simple text field to add a 'first_name' for editing the database 有一个带有简单文本字段的html表单,用于添加用于编辑数据库的“ first_name”

it's my view.py and worked for me for edit a row's field : 这是我的view.py ,并为我工作以编辑行的字段:

def update_student_detail(request, student_id):
    list = get_object_or_404 ( student, pk=student_id)
    if request.method == 'POST' :
        list.First_Name = request.POST.get('update_first_name')
    list.save()
    return HttpResponseRedirect('/school_manager/students/' + student_id)

now , what is the way to add data to database ???? 现在,将数据添加到数据库的方式是什么?

thanks 谢谢

if want to check existing row before creating new one 如果要在创建新行之前检查现有行

You Should Use get_or_create() . 您应该使用get_or_create() It returns tuple 返回元组

eg: 例如:

created_obj = Something.objects.get_or_create(name='ABC',Address="XYZ")

Try this: 尝试这个:

new_student = student(First_Name = request.POST.get('add_first_name'))
new_student.save()

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

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