Django:在视图中使用选定的单选按钮的值来更新数据库中的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django:在视图中使用选定的单选按钮的值来更新数据库中的值相关的知识,希望对你有一定的参考价值。

我正在尝试编写一个视图,单击提交后,所选单选按钮的值/ id(不确定)将传递到Django视图,然后将该值存储在特定用户的列中,单选按钮保持答案。

models.py


class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE) 

labels=[]
for i in range(1,16):
    labels.append('a'+str(i))

for label in labels:
    Profile.add_to_class(label, models.CharField(max_length=255, default='NULL', blank='NULL'))


class Image(models.Model):

    p_img = models.ImageField(max_length=255,upload_to='p_image',default='NULL', blank='NULL')
    p_img_count = models.IntegerField(default=0)

    s_image1 = models.ImageField(max_length=255,upload_to='s_image')
    s_image2 = models.ImageField(max_length=255,upload_to='s_image',default='NULL', blank='NULL')
    s_image3 = models.ImageField(max_length=255,upload_to='s_image',default='NULL', blank='NULL')
    s_image4 = models.ImageField(max_length=255,upload_to='s_image',default='NULL', blank='NULL')
    s_image5 = models.ImageField(max_length=255,upload_to='s_image',default='NULL', blank='NULL')


    def __str__(self):
        return(str(self.p_image))




class Score(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    points = models.IntegerField()

    def __str__(self):
        return(self.username)

views.py

def update_db(request):

    # getting selected radio button value and use to it update that particular user's answer in Profile model. 

    return render(request, index.html, {})

index.html

<form action='/update' >
<p style="background-color: #ddd674">Primary image :<img src="{{media_url}}{{ p_img.p_img }}" height=300px > <br> 
</p>
<hr height=2px >
<p style="background-color: #a7e0d9">Secondary image :


    {% for img in s_img %}
        {% if img  %}
            <input type="radio" id="{{ img }}" name="ans" >
                <img src="{{media_url}}{{ img }}" height=250px > 
            </input>
        {% endif %}
    {% endfor %}
    <br> 

</p>

    <button type="submit" name="next" class="btn btn-primary pull-right"> Next / Submit </button></h5>
  </form>

我主要关心的是获取查询以在视图功能中获取选定的单选按钮值并将其更新为该特定用户。

答案
您完全缺少Form抽象层。

以上是关于Django:在视图中使用选定的单选按钮的值来更新数据库中的值的主要内容,如果未能解决你的问题,请参考以下文章

Android从选定的单选按钮获取价值

如何使用js获取选定的单选按钮值

如何使用js获取选定的单选按钮值

我想在我的更新页面上显示选定的单选按钮

从 Django 的一页中获取选定单选按钮的值

仅从选定的单选按钮选项提交表单数据