Questa è più una domanda concettuale perché il modo in cui lo sto facendo sarebbe abbastanza sicuro per i miei scopi (educativo). Ho creato un semplice pannello di amministrazione che visualizza un database di scelte di magazzino come input:
{% for pick in picks %}
<tr data-post-id="{{i.id}}">
<td class="symbol"><input type="text" value="{{pick.symbol}}"></td>
<td class="buy_date"><input type="text" value="{{pick.buy_datetime}}"></td>
<td class="buy_price"><input type="text" value="{{pick.buy_price}}"></td>
<td class="sell_price"><input type="text" value="{{pick.sell_price}}"></td>
<td class="quantity"><input type="text" value="{{pick.buy_quantity}}"></td>
<td class="current_price"><input type="text" value="{{pick.current_price}}" disabled></td>
<td class="save"><button>save</button></td>
</tr>
{%endfor%}
Nel pannello, puoi modificare la singola riga e salvarla nel database tramite una richiesta Ajax basata sul post-id dei dati. Poi mi sono reso conto che se un utente malintenzionato era in grado di aggirare il sistema di accesso, poteva modificare qualsiasi riga della tabella cambiando il data-post-id nel proprio browser? In tal caso, che altro posso fare per limitare ciò che può essere modificato e assicurarsi che sia modificato solo ciò che si intende modificare?