2010-08-19 3 views
2

Je veux supprimer les enregistrements que je sélectionne, et run.html va rafraîchir, comment puis-je faire cela? Depuis que j'utilise la fonction run à views.py d'envoyer des enregistrements dans la base de données, et run besoin d'un build de paramètre qui peut être obtenu en utilisant run.name, donc je pense que je dois passer « run.name » et "run.id" quand je clique sur le bouton soumettre.Django comment modifier les enregistrements de base de données par modèle

urls.py

urlpatterns = patterns('', 
    (r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}), 
    (r'^home/$', 'views.home'), 
    (r'^home/(?P<build>[^/]+)/$', 'views.run'), 
    (r'^run/delete/$', 'views.runDelete') 
) 

run.html

<form name="form" method="post" action="/run/delete"> 
<input type="submit" value="Delete" style="margin-left:149px; width:80px; height:30px"> 
<table border="1"; borderColor=black> 
<td></td> 
<td><b>Run</b></td> 
    {% for run in run_list %} 
     <tr> 
     <td><input type="checkbox" name="var_delete" value="{{run.id}}"></td> 
     <td>{{run.name}}</td> 
     </tr> 
    {% endfor %} 
    </table> 
    </form> 

views.py

def run(request, build): 
    run_list = TestRun.objects.all().order_by('id') 
    return render_to_response('run.html', {'run_list': run_list}) 

def runDelete(request, id, build): 
    TestRun.objects.get(id=id).delete() 
    run() 

je veux aussi demander si je sélectionne enregistrements multiples dans run.html , dois-je écrire un forloop dans runDelete pour les supprimer tous?

merci: D

Répondre

1

Vous devriez vraiment jeter un oeil à Django Form

+0

merci! Mais comment puis-je obtenir deux paramètres? En utilisant post je peux obtenir la liste de cases à cocher sélectionnée, mais je n'ai aucun idéal sur la façon d'obtenir le nom de la construction ... – LoveTW

+0

D'abord, pourquoi avez-vous besoin de construire? Je ne le vois pas dans votre utilisation? Et si c'est un paramètre global, ajoutez-le à l'url "/ run/delete/ /" (jetez un oeil à {% url%} fonctionne Et quels sont les deux paramètres dont vous avez besoin: run.id et run. Pourquoi ne pas l'obtenir de r = TestRun.objects.get (id = id) et utiliser r.name? –

+0

merci à tous ~ – LoveTW

Questions connexes