Je cherche à optimiser monde code python côté serveur pour taper le moins possible de javascript côté client.
Actuellement la mode c'est de mettre un max de javascript au point qu'il a atterri coté serveur avec Node pour pas s'emmerder à coder avec deux langages.
Moi je part avec une logique inverse. J'ai compris que malgré les efforts des développeurs de Brython, il me faudrait quand même apprendre le javascript.
Souffrance, un peu atténuée par la découverte d'underscore.
Côté serveur , je termine mes fonctions de calcul avec:
return jsonify(item1=item1,item2=item2,item3=item3)
Côté client, je receptionne:
<script type="text/javascript">
$(document).ready(function() {
$('.marked').each(function(){
var monID = '' + $(this).attr('id');
$(this).click(function(){
$.ajax(
{
type:'GET',
url:$SCRIPT_ROOT + '/mon_calcul',
dataType: "JSON",
data:{clikedname: $(this).attr('id')},
success: function(data){
$('#recapitulatif').html(data);
obj = JSON.parse(data);
$('#item1').html(obj.item1);
$('#item2').html(obj.item2);
$('#item3').html(obj.item3);
...}}}}}}}}}}}
Le problème c'est que j'ai encore du mal jongler avec mes "objets" côté client. Il doit exister une astuce côté serveur pour envoyer les données avec une structure facile à manipuler ensuite, avec un minimum de ligne en javascript.
Comment faire si la liste d' item est très longue ?
Je n'ai pas reussi à changer la ligne avec return jsonify.
J'aimerai quelque chose du style:
mes_donnees = "item1=item1,item2=item2,item3=item3"
return jsonify(mes_donnees)