edit or delete selected rows in a table in django listview

It depends on how you’ve implemented your frontend, but assuming you have standard django templates, then I would suggest taking a look at datatables. There’s quite a lot to it, but it is very stable and has a decent feature set, and the documentation is good. You can style it how you want using bootstrap.

Also, you link to Bootstrap Table – that should be the same principle. Read through the docs to understand how it works, and you will have to use Django template tags to render the data in the table.

Note that the table is implemented using HTML / Jquery, so it is not directly related to Django. All you need to do is to iterate over the django objects in your template (example)


How to delete a selected row?

Suppose you could select N rows, and then click a button to delete all of these rows.

This could work as follows:

  • Add a handler to the delete button:
  • identify the selected rows
  • send an Ajax request to delete the rows
  • handle the success response to remove the deleted rows from the table

$("#delete-btn").click(function () {
  var selectedRows = table.rows({"selected": true});

  var dataObj = {
    // parse selectedRows to get object ids
      url: '/api/delete-rows/',
      type: 'post',
      data: dataObj,
      success: function (data, status, xhr) {
        // remove the selected rows from the view
        table.rows({"selected": true}).deselect().remove().draw();

How to select rows and quickly change a field for all of the selected rows?

The same principle here. Once rows are selected, have a handler which identifies the selected rows, then you can use the datatables api to update given fields (docs).

CLICK HERE to find out more related problems solutions.

Leave a Comment

Your email address will not be published.

Scroll to Top