2015-03-25 5 views
0

Я пытаюсь сохранить отмеченные флажки.Django - Сохранить отмеченные флажки при перезагрузке

Проблема, с которой я столкнулся сейчас, заключается в том, что когда я нажимаю кнопку электронной почты, страница исчезает, и когда я пытаюсь вернуться назад, она спрашивает меня, хочу ли я «Подтвердить повторное заполнение формы». Я также попытался связывающая одну страницу назад, как это в виде тега:

<form action="{% url 'ordered_user_list' %} method="post"> 

Обратите внимание, что кнопка электронной почты не должен ничего кроме перезагрузки же страница, но есть коробки проверили, как и раньше. Кроме того, если я вернусь к нему с другой страницы, он все равно должен быть отключен, как и раньше.

в HTML файл

<form method="post"> 
    <table class="table"> 
     <tr> 
     <th></th> 
     <th><u><a href="{% url "ordered_user_list" %}">Last Name</a></u></th> 
     <th><u><a href="{% url "ordered_user_list_first" %}">First Name</a></u></th> 
     <th style="width: 30%"><u><a href="{% url "ordered_user_list_email" %}">Email</a></u></th> 
     <th><u>Phone</u></th> 
     </tr> 
    {% for user in object_list %} 
     <tr> 
     <td><input type="checkbox" name="emailList" value="{{user.id}}"></td> 
     <td><a href="{% url "user_info" user.id %}"> {{ user.lastName|capfirst }}</a></td> 
     <td><a href="{% url "user_info" user.id %}">{{ user.firstName|capfirst }}</td> 
     <td>{{ user.email }}</td> 
     <td>{{ user.phone }}</td> 
     </tr> 
     {% endfor %} 
    </table> 
    {% csrf_token %} 
    <input class = "btn btn-danger" type="submit" value="Email"/></form> 

в файле Посмотреть

class OrderedUserList(ListView): 
    model = User 

    template_name = "Schedule/ordered_user_list.html" 


    def dispatch(self, *args, **kwargs): 
    if not self.request.user.is_authenticated() or (not self.request.user.admin and not self.request.user.volunteer_coordinator): 
     return forbidden() 
    checked = request.POST.get('emailList') 
    return super(OrderedUserList, self).dispatch(*args, **kwargs) 

ответ

0

Вы можете сохранить выбор, установив COOKIE (на ваш взгляд) с помощью '' set_cookie command.You может получить доступ этот файл cookie в вашей сессии и получить значения выбора везде, где вы хотите. Но помните, что 1) cookie сохраняет ваш выбор как одну строку, поэтому будьте осторожны с тем, как вы сохраняете выбранные вами фрагменты, поэтому их легче извлечь позже (используя разделение строк метод) и 2) имеет недостаток, что это будет зависящее от системы, поскольку cookie не будет доступен, если вы сохраните файл cookie на одном устройстве и попытаетесь войти в систему с какого-либо другого устройства/системы в то же время. Надеюсь, это поможет ...

Смежные вопросы