Salut Merci de ton retour!

1 —
select * from Etudiant


> $query_1 = $connection
>   ->select('Etudiant', 'etudiants')
>   ->fields('etudiants')
>   ->execute();
>  //

---
Etudiant.objects.all()



2 —
select  max(age) from Etudiant

> $query_2 = $connection->select('Etudiant', 'etudiants')
> ->fields('etudiants', array('age'));
> $query2->addExpression('MAX(age)', 'age_max');
> $query2->execute();
> //

---
Etudiant.objects.all().aggregate(age_max =Max('age'))


3 — select  n1.nom from Etudiant e,
                Professeur p
               where p.id =e.id_professeur

Professeur.etudiants_set.values('noms')


4 — select top 1 from etudiant.

$query_4 = $connection
  ->select('Etudiant', 'etudiants')
  ->fields('etudiants')
  ->limit(1)
  ->execute();
//

---
Etudiant.objects.order_by('id')[0]

5 —

select top  1 id from Professeur
Update Etudiant  set id_Professeur =id


$transaction = db_transaction();
  try {
 $id = $connection
 ->select('Professeur', 'profs')
 ->fields('profs', array('id'))
 ->limit(1)
 ->execute()->fetchField();

  $connection->update('etudiants', array('fields' =>
array('id_Professeur' => $id)))->
        execute();
}
catch (Exception $e) {
 $transaction->rollback();
 //Tout ce que tu veux comme traitement
  }


---
@transaction.commit_on_success
def update():
        professeur = Professeur.objects.order_by(
                        'id')[0]
        Etudiant.objects.update(
                professeur =professeur)




> 1GIGA de Ram c'est beaucoup mon cousin (pour drupal+mysql seulement),
>si tu
> benchmark 10.000 fois seulement pour t'amuser tu verra que le temps
> d'éxécution se mlimitera maximum à une minute ou deux minutes mais
>dans la
> vraie vie  drupal un api batching http://drupal.org/node/180528.

Je veux voir ton  benchmark , je pense que je comprend un peu que c'est
comme sandbox, mais benchmark  quand meme , on verras ensuite !

> Tu peux programer ton process et laisser travailler. Peu être que c'est la
> prochaine chose à tester?

Comment je fais concrètement ?, oui cela pourrait être la prochaine étape?

> Si tu veux du lourd, lance toi avec l'ami Drupal tu sera pas déçu.
> Mais parle avec Thomas avant :)

Avec tout le respect que j'ai pour toi, et je ne doute pas que tu sois quelqu’un
de très brillant , tu n'as pas le 1/100 ieme des neurones de Thomas Noel et
ne serait que pour ça , il faut y allez molo .


> Propose un projet que nous ferions avec drupal de A à Z, c'est une maniéré
> utile de te convaincre et de faire quelque chose d'utile non?

Non , ce ne sera pas nécessaire , j'ai juste besoin de savoir est ce que il y'a
un ORM plus souple sous drupal, orienté objects? , et si  le benchmark
est Ok pour retour , alors  peu etre que je regarderai plus en profondeur ?.

Qu'est ce que tu entends par  — Object Drupal —  , c'est quoi ? , un model
object ? , je peux voir en ligne a quoi ça ressemble ?.

—Ad





Le 25 mars 2013 19:44, Mamadou bassirou THIAM
<[email protected]> a écrit :
>
>
> 2013/3/25 Alioune Dia <[email protected]>
>>
>> Pour t'aider a me convaincre , on pourrait commencer par un truc
>> basique.
>>
>> http://drupal.org/developing/api/database
>>
>> Tu pourrais par exemple commencer par me parler de database
>> Api pour commencer? comment est ce que le backend fonctionne pour
>> me donner.
>>
>> Si pour une table Etudiant (Nom , Prenom, Age , id_Professeur)
>> Si pour une table Professeur(Nom , Prenom, Age , id)
>>
>>
>> 1 — select * from Etudiant
>> 2 — select  max(age) from Etudiant
>>
>> 3 — select  n1.nom from Etudiant e,
>>                 Professeur p
>>             where p.id =e.id_professeur
>>
>> 4 — select top 1 from etudiant.
>>
>> Et si je veux exécuter une transaction du genre ,
>>
>> 5 —
>>
>> select top  1 id from Professeur
>> Update Etudiant  set id_Professeur =id
>
> Si on suppose que tes tables se trouvent dans une base de données autre que
> celle utilise drupal
> voici à peu prés ce qu'il te faut:
>
> <?php
>
> $connection = Database::getConnection('default',
> 'base_de_donnee_alioune_dia');
> $query_1 = $connection
>   ->select('Etudiant', 'etudiants')
>   ->fields('etudiants')
>   ->execute();
>  //
> $query_2 = $connection->select('Etudiant', 'etudiants')
> ->fields('etudiants', array('age'));
> $query2->addExpression('MAX(age)', 'age_max');
> $query2->execute();
> //
> $query_3 = $connection->select('Etudiant', 'etudiants')
>   ->fields('etudiants', array('nom'));
> $query_3->leftjoin('Professeur', 'profs',
> 'etudiants.id_Professeur=professor.id');
> $query_3->execute();
> //
> $query_4 = $connection
>   ->select('Etudiant', 'etudiants')
>   ->fields('etudiants')
>   ->limit(1)
>   ->execute();
> //
> $transaction = db_transaction();
>   try {
>  $id = $connection
>  ->select('Professeur', 'profs')
>  ->fields('profs', array('id'))
>  ->limit(1)
>  ->execute()->fetchField();
>
>   $connection->update('etudiants', array('fields' => array('id_Professeur'
> => $id)))->execute();
> }
> catch (Exception $e) {
>  $transaction->rollback();
>  //Tout ce que tu veux comme traitement
>   }
>
>
>
>>
>>
>> 6  —
>> Si je benchmark sur un systeme avec 1 GIGA de Ram
>> avec une base de données MySql , combien de temps il me
>> faut pour exécuter la transaction — 5 , 10.000 fois
>>
>
> 1GIGA de Ram c'est beaucoup mon cousin (pour drupal+mysql seulement), si tu
> benchmark 10.000 fois seulement pour t'amuser tu verra que le temps
> d'éxécution se mlimitera maximum à une minute ou deux minutes mais dans la
> vraie vie  drupal un api batching http://drupal.org/node/180528.
> Tu peux programer ton process et laisser travailler. Peu être que c'est la
> prochaine chose à tester?
>
>
>>
>>
>> Si l’étape —5 et  — 6 prend du temps, tu pourrais juste me monter
>> comment (juste la syntaxe pour avoir l’étape  —1 a  —4  avec le
>> data base backend de drupal , je pourrais juste voir si c'est
>> elle est séduisante .
>> Ensuite on teste autre chose sur Drupal ?
>> — Ad
>
>
> Mieux encore si Etudiant et Professeur étaient des entités de drupal, tu te
> contenterais de http://drupal.org/project/views, c'est du lourd ce module.
>
>
> Si tu veux du lourd, lance toi avec l'ami Drupal tu sera pas déçu.
> Mais parle avec Thomas avant :)
> Propose un projet que nous ferions avec drupal de A à Z, c'est une maniére
> utile de te convaincre et de faire quelque chose d'utile non?
>
>
>>
>>
>>
>>
>> Le 25 mars 2013 16:12, Alioune Dia <[email protected]> a écrit :
>> > Thomas Noel est bien arrivé a me convaincre de faire du Python, bon sang
>> > essayer
>> > juste de me convaincre /Mais vraiment, peu importe si je suis une
>> > seule personne .
>> > —Ad
>> >
>> > Le 25 mars 2013 11:40, Mamadou bassirou THIAM
>> > <[email protected]> a écrit :
>> >> Bonjour les amis,
>> >> Je suis trop exité ce matin, alors aujourd'hui je ne pourrai pas
>> >> m'empécher
>> >> d'écrire.
>> >> Je suis cette discussion depuis plusieurs semaines maintenant, et c'est
>> >> ça
>> >> qui est bizarre.
>> >>
>> >>
>> >>
>> >> 2013/3/25 Alioune Dia <[email protected]>
>> >>>
>> >>> Salut :-)
>> >>>
>> >>> Le 25 mars 2013 04:10, Patt Nsukami <[email protected]> a écrit :
>> >>> > Puisque nous sommes a l'heure de ce qui inquiete :)
>> >>> >
>> >>> > Ce qui m'inquiete c'est cette maniere que tu as de t'auto detruire
>> >>> > des
>> >>> > le debut, (aucune maitrise de quoi que ce soit, aussi bete que l'ane
>> >>> > de buridan, etc ....) ça devient habituel chez toi, et effrayant, un
>> >>> > peu comme si tu manques de confiance en toi. :-\ si t'as pas
>> >>> > confiance
>> >>> > en toi, personne le feras a ta place.
>> >>> >
>> >>>
>> >>>
>> >>> +1 , ca sent le manque de confiance.
>> >>>
>> >>>
>> >>> > Accepter de taffer sans etre payé, soit disant parce que c'est pour
>> >>> > toi l'occasion de monter en competence. Moi ce que je vois c'est que
>> >>> > t'as pas confiance en toi. Les membres de cette liste ne font que
>> >>> > ça:
>> >>> > ils se font plein de sous pour apprendre et maitriser de nouveaux
>> >>> > trucs chaque matins, des trucs qu'hier ils ne connaissaient pas, et
>> >>> > alors ????
>> >>>
>> >>> +1 , ca sent le manque de confiance, dans ce pays les gens se
>> >>> réveillent
>> >>> tous
>> >>> les jours , mettent leurs costumes , prennent leurs voitures , posent
>> >>> leur cul
>> >>> dans
>> >>> un bureau et vendent du vent toute la journée a coup de millions :-) .
>> >>> Pourquoi tu ne vendrais pas ton site a coup de millions toi aussi ,
>> >>> qu'importe qu'il soit même sous DreamWaver , toi au moins tu vends
>> >>> du  concret :-).
>> >>>
>> >>> > Un outil pas trop compliqué mais quand meme puissant, je te rassures
>> >>> > tout de suite, ça existes pas j'ai deja cherché, choisis en un avec
>> >>> > lequel tu arrives a PRODUIRE VITE ET BIEN. Celui  avec lequel t'es a
>> >>> > l'aise, tu veux le beurre et l'argent du beurre parbleu :-o
>> >>>
>> >>> - 1
>> >>>
>> >>> Un outil exits bel et bien et sa s'appelle Django pour moi, et peu
>> >>> être
>> >>> que ça s'appelle Php pour d'autres.  — Mais moi ce qui m’inquiète  —
>> >>> c'est que cette liste devait m'appendre des choses nouvelles car en
>> >>> réalité
>> >>> c'est pour cette raison que je me suis inscrit , en me disant que les
>> >>> étudiants
>> >>> sont férus de nouvelles technologies et ils pourraient m'apprendre de
>> >>> nouvelles
>> >>> choses moi qui suit un peu loin de ce monde estudiantine et qui est
>> >>> dans
>> >>> le
>> >>> monde professionnelle .Mais tout ce que je lis dans cette liste c'est
>> >>> du Joomla ,
>> >>> SPIP , et personne ne m'as encore vraiment convaincu d'aller vers du
>> >>> Drupal ,
>> >>> c'est encore très vague les choses qu'on me donnent .Je suis même a me
>> >>> demander si les étudiants sont plus bons que moi.
>> >>>
>> >>
>> >> Est ce que cette liste est une liste d'étudiant ou à majorité
>> >> constituée
>> >> d'étudiants?
>> >> Quelqun peut-il nous éclairer please?
>> >>
>> >>>
>> >>> Le défit de la programmation c'est de résoudre les problèmes de façons
>> >>> objets , et d'interactions entre des objets , je dois programmer comme
>> >>> si je parlais, le passage entre la parole et la programmation doit
>> >>> être
>> >>> trans
>> >>> parente .Sur mon bureau j'ai des ordinateurs , tasse de café ,
>> >>> téléphone ,
>> >>> mes mains qui tapent sur un clavier , ça c'est mon monde réel , si
>> >>> je dois encire toute cette logique dans un langage , la chose doit
>> >>> être
>> >>> transparent et fluide , sinon ce n'est pas un bon langage de
>> >>> programmation.
>> >>>
>> >>> La programmation n'est pas un truc d' élite comme on, veut le croire
>> >>> au
>> >>> gens c'est juste un truc de bon sens (Traduire un truc réel en un
>> >>> truc
>> >>> informatique)
>> >>> quand on me dis c'est quoi le  'données' commercial'
>> >>> Le bon sens veut que quand je récupère le requête que le minimum de
>> >>> données soient encapsule dans le — request .user— de l'utilisateur en
>> >>> cours ,
>> >>> et que si il y'a des choses a recuperer que cette chose soit encapsulé
>> >>> dans un
>> >>>  object —  ConseillerCommercial —  , pas dans — Mouton—  ou dans un
>> >>> — chevre.—
>> >>>
>> >>> @login_required
>> >>> def rbon_check(request ,template_name):
>> >>>     print request.user
>> >>>     user, best =\
>> >>>          Commercial.rbon_check(request.user)
>> >>>              return render_to_response(template_name ,
>> >>> {'data' :[user,best] })
>> >>>
>> >>> En 2013  personne n'a plus le temps a perdre  a se fatiguer  a
>> >>> programmer
>> >>> ,
>> >>> et dans un environnment de production c'est quasiment impossible ,
>> >>> alors
>> >>> j'ai besion de programmer comme si je parlais , et je dois passer plus
>> >>> de
>> >>> temps a faire de l'abtraction , Drupal , Django , WhatEver qui
>> >>> n'arrive
>> >>> pas
>> >>> a me permettre de programmer un tas de chose en une seule journée
>> >>> n'est
>> >>> pas un bon truc , Mais Pat un tel truc existe bel et bien .
>> >>>
>> >>
>> >> As tu essayer de *programmer* avec Drupal,
>> >> Je pense pas que des gens se tueraient à convaincre un seul
>> >> *programmeur*
>> >> alors qu'il y a un framework à maintenir pour des millions
>> >> d'utilisateurs.
>> >>
>> >> C'est dailleurs impossible de convaincre un programmeur par écrit ou
>> >> discours, je pense que de pareils gens adoptent les solutions qu'ils
>> >> ont eux
>> >> meme testé et approuvé?
>> >>
>> >>  Il y a des gens qui arrivent à programmer un tas de chose en une seule
>> >> journée avec Drupal, Django , WhatEver ; alors peut être que c'est en
>> >> rapport avec les personnes et non avec ces outils.
>> >>
>> >>
>> >>>
>> >>> — Ad
>> >>>
>> >>
>> >> Arretons de mettre n'importe quoi en ligne, si vous on peut faire *un
>> >> bon
>> >> site web* faisons le , sinon laissons un *bon dev web* le faire
>> >> moyenant le
>> >> coût d'un *bon site web*.
>> >>
>> >> Have a nice day guys,!
>> >>
>> >>
>> >>
>> >>>
>> >>> --
>> >>> Ce message a été envoyé à la liste [email protected]
>> >>> Gestion de votre abonnement : http://dakarlug.org/liste
>> >>> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
>> >>> Le site du DakarLUG : http://dakarlug.org
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> Ce message a été envoyé à la liste [email protected]
>> >> Gestion de votre abonnement : http://dakarlug.org/liste
>> >> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
>> >> Le site du DakarLUG : http://dakarlug.org
>>
>> --
>> Ce message a été envoyé à la liste [email protected]
>> Gestion de votre abonnement : http://dakarlug.org/liste
>> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
>> Le site du DakarLUG : http://dakarlug.org
>
>
>
>
> --
> Ce message a été envoyé à la liste [email protected]
> Gestion de votre abonnement : http://dakarlug.org/liste
> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
> Le site du DakarLUG : http://dakarlug.org

--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à