Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1781 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5  6  7  8  9  10  11  12
Auteur Sujet :

Symfony : questions

n°1979314
theredled
● REC
Posté le 31-03-2010 à 10:12:15  profilanswer
 

Reprise du message précédent :

flo850 a écrit :

le result cache de doctrine cache pendant un certain temps les résultats de ma requêtes , après l'avoir parsé

 

1/ je n'ai aucun moyen de savoir à l'avance combien de temps un résultat va être valable (en terme de durée de vie)
2/ je ne peux pas me permettre d'afficher un résultat faux :
La requête la plus couteuse me sers à calculer le temps consommé dans un type d'activité ou une famille de type d'activité. Le résultat de cette requête est utilisé, entre autres, dans des sfformvalidator . Si le résultat est périmé, je peux valider des formulaires alors que le quota est dépassé, et ça , c'est hors de question, il y a facturation derrière
3/ il m'est très simple de savoir quand le résultat est invalidé :  au moment de l'ajout, la modification ou la suppression d'une activité.
4/ en bonus, j'économise le parsing de la requête

 

Supprimer manuellement des entrées de cache ça marche aussi avec Doctrine :
http://www.doctrine-project.org/up [...] provements


Message édité par theredled le 31-03-2010 à 10:14:02

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
mood
Publicité
Posté le 31-03-2010 à 10:12:15  profilanswer
 

n°1979316
flo850
moi je
Posté le 31-03-2010 à 10:14:47  profilanswer
 

:jap:
je n'avais pas vu ça

n°1979340
ratibus
Posté le 31-03-2010 à 10:50:31  profilanswer
 

flo850 a écrit :

je ne connaissais pas, je le note  
(par contre, ça va pas être possible pour ce projet, vu que la base définitive sera sous SQL server )


T'as ptet le même genre d'infos sur SQL Server ;)


---------------
Mon blog
n°1980291
Alisteroid
Posté le 02-04-2010 à 11:00:16  profilanswer
 

Bonjour,

 

J'ai un ptit problème, je me sert de l'adminGenerator pour administrer une table.

 

ma table a la forme suivante :
id
libelle
date_insert
nom_insert
date_update
nom_update

 

J'ai donc mis display [libelle] pour les écran d'ajout et d'édition pour qu'on ne renseigne que le champ libelle.
Les champs date_insert,nom_insert,date_update,nom_update sont mis automatiquement à jour avec un listener en preUpdate pour date_update,nom_update et en preSave pour les deux autres.

 

Le problème est que dès que je modifie un enregistrement ça me remet date_insert et nom_insert à NULL. (Si je rajoute d'autres champs que je n'affiche pas non plus dans mon form, ils sont aussi remis à null)

 

Ca vient du fait que je n'affiche pas ces champs dans le formulaire ?Et que symfony essaye de récuperer ces valeurs et donc les mets à NULL en ne trouvant pas leur valeur?

 

C'est possible de faire une page d'édition ou on ne modifie qu'une partie des champs sans toucher aux autres valeurs?

 

Ca ne vient pas de mes listener, si je les commente , le résultat est le même.

 

Merci

 

:jap:

Message cité 1 fois
Message édité par Alisteroid le 02-04-2010 à 11:00:34
n°1980295
flo850
moi je
Posté le 02-04-2010 à 11:10:55  profilanswer
 

pour les dates, tu as regardé du côté du behavior (actas ) timestampable ( si tu utilises doctrine )  
tu peux montrer le code de ton preupdate ?
 

n°1980298
theredled
● REC
Posté le 02-04-2010 à 11:18:05  profilanswer
 

Alisteroid a écrit :

Bonjour,

 

J'ai un ptit problème, je me sert de l'adminGenerator pour administrer une table.

 

ma table a la forme suivante :
id
libelle
date_insert
nom_insert
date_update
nom_update

 

J'ai donc mis display [libelle] pour les écran d'ajout et d'édition pour qu'on ne renseigne que le champ libelle.
Les champs date_insert,nom_insert,date_update,nom_update sont mis automatiquement à jour avec un listener en preUpdate pour date_update,nom_update et en preSave pour les deux autres.

 

Le problème est que dès que je modifie un enregistrement ça me remet date_insert et nom_insert à NULL. (Si je rajoute d'autres champs que je n'affiche pas non plus dans mon form, ils sont aussi remis à null)

 

Ca vient du fait que je n'affiche pas ces champs dans le formulaire ?Et que symfony essaye de récuperer ces valeurs et donc les mets à NULL en ne trouvant pas leur valeur?

 

C'est possible de faire une page d'édition ou on ne modifie qu'une partie des champs sans toucher aux autres valeurs?

 

Ca ne vient pas de mes listener, si je les commente , le résultat est le même.

 

Merci

 

:jap:


A noter que preSave() est toujours appelé (insert ou update) ; c'est preInsert() si tu veux un autre comportement pour l'insert.

 

Sinon pour ton pb je paries $8 que pour désactiver tes champs tu les as simplement virés du generator.yml.
Mais ça ça les vire pas de l'objet form en fait (ça les affiche juste pas), il faut faire explicitement unset($this['nom_insert']); dans ton MachinForm::configure();

Message cité 1 fois
Message édité par theredled le 02-04-2010 à 11:20:01

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1980304
Alisteroid
Posté le 02-04-2010 à 11:25:36  profilanswer
 

flo850 a écrit :

pour les dates, tu as regardé du côté du behavior (actas ) timestampable ( si tu utilises doctrine )
tu peux montrer le code de ton preupdate ?


Je me suis inspiré de timestampable pour faire mon listener, mais ça vient pas de la , je l'ai désactivé dans mon schema et c'est pareil.

 


theredled a écrit :


A noter que preSave() est toujours appelé (insert ou update) ; c'est preInsert() si tu veux un autre comportement pour l'insert.

 

Sinon pour ton pb je paries $8 que pour désactiver tes champs tu les as simplement virés du generator.yml.
Mais ça ça les vire pas de l'objet form en fait (ça les affiche juste pas), il faut faire explicitement unset($this['nom_insert']); dans ton MachinForm::configure();


C'est bien preInsert que j'utilise.
Oui je les ai viré de mon generator en mettant display: [libelle], faut aussi que je fasse unset des champs que je veux pas montrer?
Et si je veux qu'un champs soit dispo uniquement en modification ? ( le champ "valid", un flag qui dit si mon enregistrement a été validé ou non, j'ai aussi crée un behavior pour ça), j'ai moyen de faire un if ($row->isNew()) dans mon form (Quelle est la syntaxe, la bonne manière de faire ?)

 


Message édité par Alisteroid le 02-04-2010 à 11:27:05
n°1980309
flo850
moi je
Posté le 02-04-2010 à 11:30:23  profilanswer
 

Code :
  1. if($form->getObject()->isNew()
 

si tu as plusieurs form( un pour création , un pour validation) , tu fais deux classes qui heritent de ton form de base et   tu choisi le bon dans ta fonction processForm de action

Message cité 1 fois
Message édité par flo850 le 02-04-2010 à 11:31:20
n°1980310
Alisteroid
Posté le 02-04-2010 à 11:33:37  profilanswer
 

Merci :jap:

n°1980311
theredled
● REC
Posté le 02-04-2010 à 11:33:51  profilanswer
 

flo850 a écrit :

Code :
  1. if($form->getObject()->isNew()




Voilà, ça ferait  

Code :
  1. public function configure()
  2. {
  3.  if (!$this->object->isNew())
  4.   unset($this['insertmachin']);
  5. }


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
mood
Publicité
Posté le 02-04-2010 à 11:33:51  profilanswer
 

n°1980317
flo850
moi je
Posté le 02-04-2010 à 11:39:06  profilanswer
 

theredled a écrit :


Voilà, ça ferait  

Code :
  1. public function configure()
  2. {
  3.  if (!$this->object->isNew())
  4.   unset($this['insertmachin']);
  5. }



 
Perso , je ferai plutot  
 

Code :
  1. class TrucForm extends BaseTrucForm{
  2. function configure()
  3.     {
  4.        //ce qui est commun au deux
  5.    }
  6.  
  7. }
  8.  
  9. class TrucFormCreate extends Trucform{
  10.     function configure()
  11.     {
  12.        //ce qui est spécifique à la création ( par exemple des labels)
  13.    }
  14. }
  15.  
  16. class TrucFormUpdate extends Trucform{
  17.     function configure()
  18.     {
  19.         unset($this['insertmachin']);
  20.    }
  21. }
  22.  
  23.  
  24. //action.class.php
  25. class TrucAction extends sfActions{
  26.    public function executeCreate(){
  27.          $this->form = new TrucFormCreate ();
  28.   }
  29.    public function executeUpdate(){
  30.          $this->form = new TrucFormUpdate  ();
  31.   }
  32. }


 
 

n°1980322
theredled
● REC
Posté le 02-04-2010 à 11:47:01  profilanswer
 

Sur le principe ok, mais si ya que 2 champs à virer...


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1980401
flo850
moi je
Posté le 02-04-2010 à 14:57:58  profilanswer
 

ratibus > sur ton plugin quand j'ai une erreur fatale dans mon code (genre nue erreur de nom de fonction) , au lieu d'avoir le vrai messare d'erreur j'ai  

! ) Fatal error: Call to undefined function _compute_public_path() in /var/www/vacation2/plugins/elXHProfPlugin/lib/XHProfRun.class.php on line 135
Call Stack
# Time Memory Function Location
1 0.0001 53884 {main}( ) ../frontend_dev.php:0
2 0.1519 3210804 sfContext->dispatch( ) ../frontend_dev.php:13
3 0.1520 3210804 sfFrontWebController->dispatch( ) ../sfContext.class.php:170
4 0.5518 9441128 sfException->printStackTrace( ) ../sfFrontWebController.class.php:56
5 0.5521 9441248 sfException::outputStackTrace( ) ../sfException.class.php:110
6 0.7730 9867376 sfEventDispatcher->filter( ) ../sfException.class.php:232
7 0.7731 9868952 call_user_func_array ( ) ../sfEventDispatcher.php:118
8 0.7731 9869096 sfWebDebugLogger->filterResponseContent( ) ../sfEventDispatcher.php:0
9 0.7796 9993428 sfWebDebug->injectToolbar( ) ../sfWebDebugLogger.class.php:174
10 0.7806 10041532 sfWebDebug->asHtml( ) ../sfWebDebug.class.php:159
11 1.2650 10603928 elWebDebugPanelXHProf->getPanelContent( ) ../sfWebDebug.class.php:185
12 1.9329 10965220 XHProfRun->getUrl( ) ../elWebDebugPanelXHProf.class.php:50


 
il semble que dans ce cas là , assethelp ne soit pas chargé  
 
c'est dommage qu'un  outil de debuggage masque des erreurs

n°1980408
ratibus
Posté le 02-04-2010 à 15:24:10  profilanswer
 

flo850 a écrit :

ratibus > sur ton plugin quand j'ai une erreur fatale dans mon code (genre nue erreur de nom de fonction) , au lieu d'avoir le vrai messare d'erreur j'ai  

! ) Fatal error: Call to undefined function _compute_public_path() in /var/www/vacation2/plugins/elXHProfPlugin/lib/XHProfRun.class.php on line 135
Call Stack
# Time Memory Function Location
1 0.0001 53884 {main}( ) ../frontend_dev.php:0
2 0.1519 3210804 sfContext->dispatch( ) ../frontend_dev.php:13
3 0.1520 3210804 sfFrontWebController->dispatch( ) ../sfContext.class.php:170
4 0.5518 9441128 sfException->printStackTrace( ) ../sfFrontWebController.class.php:56
5 0.5521 9441248 sfException::outputStackTrace( ) ../sfException.class.php:110
6 0.7730 9867376 sfEventDispatcher->filter( ) ../sfException.class.php:232
7 0.7731 9868952 call_user_func_array ( ) ../sfEventDispatcher.php:118
8 0.7731 9869096 sfWebDebugLogger->filterResponseContent( ) ../sfEventDispatcher.php:0
9 0.7796 9993428 sfWebDebug->injectToolbar( ) ../sfWebDebugLogger.class.php:174
10 0.7806 10041532 sfWebDebug->asHtml( ) ../sfWebDebug.class.php:159
11 1.2650 10603928 elWebDebugPanelXHProf->getPanelContent( ) ../sfWebDebug.class.php:185
12 1.9329 10965220 XHProfRun->getUrl( ) ../elWebDebugPanelXHProf.class.php:50


 
il semble que dans ce cas là , assethelp ne soit pas chargé  
 
c'est dommage qu'un  outil de debuggage masque des erreurs


Ouais on a eu ça ici aussi :D
http://trac.symfony-project.org/changeset/28968
 
Depuis sf1.3/1.4 ils affichent la webdebugtoolbar en cas d'exception. Donc t'as une exception dans ton code :D


Message édité par ratibus le 02-04-2010 à 15:24:59

---------------
Mon blog
n°1980411
flo850
moi je
Posté le 02-04-2010 à 15:28:16  profilanswer
 

J'avais fait le même patch :sol:

 

oui ,j'ai une exception dans mon code :o, mais j'aimerai bien un indice ( meme si , dans ce cas, j'ai juste fait une sale faute de frappe )

Message cité 1 fois
Message édité par flo850 le 02-04-2010 à 15:28:23
n°1980416
ratibus
Posté le 02-04-2010 à 15:35:38  profilanswer
 

flo850 a écrit :

J'avais fait le même patch :sol:
 
oui ,j'ai une exception dans mon code :o, mais j'aimerai bien un indice ( meme si , dans ce cas, j'ai juste fait une sale faute de frappe )


Patch crado s'il en est :D
Faut que je l'améliore mais pas le temps là. Le quick & dirty c'est bien pour cet usage :D


---------------
Mon blog
n°1980426
flo850
moi je
Posté le 02-04-2010 à 15:47:31  profilanswer
 

mais pourquoi il laisse apsser ce genre de trucs :

 
Code :
  1. INSERT INTO activite_agent (id, activite_id, agent_id, debut, fin, duree, cout, statut) VALUES ('', '', '', '', '', '', '', '')


alors que j'ai une belle fonction de validation qui devrait me péter à la gueule

Code :
  1. public function isValid($deep = false, $hooks = true)
  2.    {
  3.        if(!$this->getAgentId()){
  4.            return false;
  5.        }
  6.        
  7.        if(!$this->getDebut() && !$this->getFin() && $this->getActivite()->getTypeActivite()->estHorodate())
  8.            return false;
  9.  
  10.        return parent::isValid($deep, $hooks);
  11.    }
 

et bien sur il ne me pete pas une contrainte de violation de clé alors que agent_id activite_id sont des clés étrangères


Message édité par flo850 le 02-04-2010 à 15:49:30
n°1980629
Alisteroid
Posté le 03-04-2010 à 11:52:39  profilanswer
 

Merci pour vos réponse :o

 
  • Sinon j'ai une autre question, quand je modifie mon schema et que je fais un build --all --and -load, y a un moyen de configurer le fait de dropper les tables ou non ?En fait j'ai mon site et mon forum dans la même base, ducoup je suis obligé de faire build-schema pour mettre à jour mon schema à chaque changement de structure de table que je suis obligé de faire directement dans phpmyadmin, sinon le build--all --and-load me dropperait mes tables du forum et je serai obligé de réimporter les données à chaque fois :/. Du coup qd je fais un build-chema je perds toutes les conf des behaviors et les modifs que j'ai fais dans le schema avant (genre passer les tinyint(1) en boolean pour avoir une checkbox dans l'admin générator)


Quelle est la bonne façon de faire ?

 
  • Autre question, le behavior que j'ai crée set l'id du user qui a inseré la ligne (au preInsert), dans les filtres de l'admin générator j'ai donc un select dans les filtres contenant la liste des utilisateurs pour pouvoir filtrer sur le id_user_insert. Le problème est que je voudrais récupérer la liste des user qui ont au moins inséré une ligne dans cette table.

(En gros select * from users where id_user in( select distinct id_user_insert from matable). J'aimerai ne pas mettre cette méthode dans tous mes modèles de tables, comment la factoriser proprement avec mon behavior ?

 

Merci :jap:

Message cité 1 fois
Message édité par Alisteroid le 03-04-2010 à 12:01:32
n°1980962
flo850
moi je
Posté le 05-04-2010 à 19:43:53  profilanswer
 

- il y a les migrations ( mais je n'ai pas testé )

 

- sauf erreur de ma part, ton behavior peut ajouter des méthodes dans matableTable ,non ? Si oui  il  te "suffis" d'y ajouter une fonction getUsersWithAtLeastOneInsertInMyTableWithMyBehavior()

Message cité 1 fois
Message édité par flo850 le 05-04-2010 à 19:44:04
n°1980997
theredled
● REC
Posté le 05-04-2010 à 22:15:20  profilanswer
 

Alisteroid a écrit :

Merci pour vos réponse :o
 

  • Sinon j'ai une autre question, quand je modifie mon schema et que je fais un build --all --and -load, y a un moyen de configurer le fait de dropper les tables ou non ?En fait j'ai mon site et mon forum dans la même base, ducoup je suis obligé de faire build-schema pour mettre à jour mon schema à chaque changement de structure de table que je suis obligé de faire directement dans phpmyadmin, sinon le build--all --and-load me dropperait mes tables du forum et je serai obligé de réimporter les données à chaque fois :/. Du coup qd je fais un build-chema je perds toutes les conf des behaviors et les modifs que j'ai fais dans le schema avant (genre passer les tinyint(1) en boolean pour avoir une checkbox dans l'admin générator)  


Quelle est la bonne façon de faire ?)


J'ai pas tout pigé, mais pourquoi tu fais pas ton drop via un script à toi, et ensuite tu rebuild avec doctrine ?
 

flo850 a écrit :


- sauf erreur de ma part, ton behavior peut ajouter des méthodes dans matableTable ,non ? Si oui  il  te "suffis" d'y ajouter une fonction getUsersWithAtLeastOneInsertInMyTableWithMyBehavior()


->maMethodeTableProxy() dans le behaviour plutôt :o
Avec ça tu peux appeler Table->maMethode(), transparent et pas chiant.


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1982216
Alisteroid
Posté le 08-04-2010 à 21:16:12  profilanswer
 

Merci pour vos réponse je vais jeter un oeil à tout ça :jap:

n°1985418
Alisteroid
Posté le 19-04-2010 à 11:37:08  profilanswer
 

Bonjour,

 

J'ai un problème avec les filters, j'ai besoin de mettre des choix multiples pour tous mes select et aussi une valeur vide.

 

Ca marche très bien quand je mets pas le choix multiple, si je choisi l'option vide, ça prend pas en compte le champ dans les critères de recherche.

 

Par contre si je met un choix multiple et que je choisi uniquement la valeur vide, j'ai un beau sfValidatorError ('invalid.')

 

Comment faire donc pour avoir un select multiple et autoriser de choisir uniquement la valeur vide ('--selectionnez--')

 

Merci :jap:

Message cité 3 fois
Message édité par Alisteroid le 19-04-2010 à 11:43:35
n°1985464
Schimz
Bouge pas, meurs, ressuscite !
Posté le 19-04-2010 à 14:11:51  profilanswer
 

http://forum-images.hardware.fr/themes_static/images_forum/1/favorisb.gif [:nozdormu]
 

Spoiler :

Abandon de notre fw maison pour Symfony.


Message édité par Schimz le 19-04-2010 à 14:12:28

---------------
çà s'est HFR | Music for the Galaxy
n°1985465
flo850
moi je
Posté le 19-04-2010 à 14:14:31  profilanswer
 

Alisteroid a écrit :

Bonjour,
 
J'ai un problème avec les filters, j'ai besoin de mettre des choix multiples pour tous mes select et aussi une valeur vide.
 
Ca marche très bien quand je mets pas le choix multiple, si je choisi l'option vide, ça prend pas en compte le champ dans les critères de recherche.
 
Par contre si je met un choix multiple et que je choisi uniquement la valeur vide, j'ai un beau sfValidatorError ('invalid.')
 
Comment faire donc pour avoir un select multiple et autoriser de choisir uniquement la valeur vide ('--selectionnez--')
 
Merci :jap:


comment tu déclare la liste des valeurs acceptées ?

n°1985513
Alisteroid
Posté le 19-04-2010 à 16:42:57  profilanswer
 

flo850 a écrit :


comment tu déclare la liste des valeurs acceptées ?


Mon widget c'est un sfWidgetDoctrineChoice en passant allow_empty  = true et multiple = true en option.
Mon validateur c'est un sfValidatorDoctrineChoice, je le passe multiple = true en option.
 
Mes listes sont donc chargées à partir de tables.

n°1986162
masseur
Posté le 21-04-2010 à 10:16:57  profilanswer
 

Bonsoir.
 
J'ai besoin d'une petite précision dont je trouve pas de réponse.
 
J'ai une schéma comme ceci.
 

Code :
  1. Post:
  2.     id:
  3.       type: integer(8)
  4.       primary: true
  5.       notnull: true
  6.     author_user_id:
  7.       type: integer(8)
  8.       notnull: true
  9.     title:
  10.       type: string(256)
  11.       notnull: true
  12.   relations:
  13.     authorUser:
  14.       class: sfGuardUser
  15.       local: author_user_id
  16.       foreign: id
  17.       foreignAlias: Posts
  18.       foreignType: many


 
J'ai généré ce yml à partir d'un plugin pour mysql workbench (même si cela n'a aucun intérêt d'être précise), donc j'aurais voulu savoir a quoi correspond le authorUser, il s'agit du nom de ma relation je suppose mais comment cela est il utilisé concrètement dans symfony, j'ai bien compris l'utilisation du foreignAlias mais pour le nom de la relation l'utilise t'on explicitement?
 
Merci

n°1986163
flo850
moi je
Posté le 21-04-2010 à 10:21:53  profilanswer
 

tu t'en rendras mieux compte en générant tes modèles.
Une fois que ce sera fait, va dans lib/model/doctrine/base/BasePost.php

 

tu y verras des methodes getAuthorUser() et setAuthoUser();

 

c'est aussi le nom de cette relation que tu utiliera pour faire des jointures

Code :
  1. $q = Doctrine::getTable('Post')
  2. ->createQuery('p')
  3. ->leftJoin('p.authorUser u);
 

et de l'autre côté, tu pourra faire $user->getPosts()


Message édité par flo850 le 21-04-2010 à 10:22:47
n°1986168
masseur
Posté le 21-04-2010 à 10:34:17  profilanswer
 

Merci flo850, c'est bien clair du coup.

n°1986181
masseur
Posté le 21-04-2010 à 11:09:34  profilanswer
 

Une autre petite question.
 
Dans la doc je vois ceci.
 

Code :
  1. Phonenumber:
  2.   columns:
  3.     user_id: integer
  4.     phonenumber: string(255)
  5.   relations:
  6.     User:
  7.       foreignAlias: Phonenumbers
  8.       local: user_id
  9.       foreign: id
  10.       type: one
  11.       foreignType: many


 
Le foreignType ca correspond au type de relation sur la table étrangère et le type ca correspond au type de la relation locale?
 
Merci :)

n°1986182
Tirkyth
Posté le 21-04-2010 à 11:11:35  profilanswer
 

Ca correspond au type de la relation sur la table étrangère.
 
Là tu es sur Phonenumber. Tu définis une relation vers User, type:one. Ton Phonenumber est donc relié à un user. foreignType: many signifie donc que un User est relié à plusieurs Phonenumbers.

n°1986186
theredled
● REC
Posté le 21-04-2010 à 11:17:01  profilanswer
 

masseur a écrit :

Une autre petite question.

 

Dans la doc je vois ceci.

 
Code :
  1. Phonenumber:
  2.   columns:
  3.     user_id: integer
  4.     phonenumber: string(255)
  5.   relations:
  6.     User:
  7.       foreignAlias: Phonenumbers
  8.       local: user_id
  9.       foreign: id
  10.       type: one
  11.       foreignType: many
 

Le foreignType ca correspond au type de relation sur la table étrangère et le type ca correspond au type de la relation locale?

 

Merci :)


Ouais, en gros là un User aura une collection de PhoneNumbers, et un PhoneNumber aura un seul objet User.

 

Mais comme c'est le comportement par défaut, et "id" le champ externe par défaut, tu peux aussi bien écrire juste :


    User: {foreignAlias: Phonenumbers, local: user_id}

 


Ca devient intéressant si l'User a un seul PhoneNumber (foreignType: one), par ex.


Message édité par theredled le 21-04-2010 à 11:21:57

---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1986199
masseur
Posté le 21-04-2010 à 11:38:13  profilanswer
 

Merci à vous deux.

n°1986604
masseur
Posté le 22-04-2010 à 12:50:38  profilanswer
 

Voici le schéma de la partie de la base de donnée qui nous intéresse (je pense qu'il est très clair, si ce n'est pas le cas dites le).
 
http://img442.imageshack.us/img442/5504/helppe.png
 
Je suis en train de réfléchir a quoi faire lors de la suppression d'un "term".
 
Pour la table term_taxonomy c'est simple il faudrait faire un ON DELETE CASCADE dans la définition de mon schéma.yml, cependant cela se complique pour relationship.
 
En effet lors de la suppression dans term_taxonomy il faudrait que je recup d'abord l'id de la ligne qui va être supprimé par le CASCADE et ainsi cela me permettrait de pouvoir supprimer la bonne ligne dans relationship en lui disant de virer les lignes ou term_taxonomy_id = id récupéré.
 
Je suppose que rien est prévu dans symfony pour cela?
 
Il vaut mieux que je gère moi même toute la mécanique au lieu d'essayer de faire gérer ça dans mon schéma de symfony?
 
Merci

n°1986605
Sylfurd
UUUURUTORAMAN §§
Posté le 22-04-2010 à 12:59:00  profilanswer
 

HS
Joli diagramme, fait avec quoi ?
/HS


---------------
NNiD: Sylfurd
n°1986606
theredled
● REC
Posté le 22-04-2010 à 13:00:24  profilanswer
 

J'ai p-e mal pigé, mais tu ne veux pas faire un ON DELETE CASCADE dans term_relationship sur la FK fk_term_relationship_term_taxonomy ?
 


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1986607
theredled
● REC
Posté le 22-04-2010 à 13:01:05  profilanswer
 

Sylfurd a écrit :

HS
Joli diagramme, fait avec quoi ?
/HS


Un truc moins moisis que DBDesigner apparemment :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1986608
Alisteroid
Posté le 22-04-2010 à 13:04:41  profilanswer
 

Sylfurd a écrit :

HS
Joli diagramme, fait avec quoi ?
/HS


Je pense que ça vient de mysql GUI tools
http://dev.mysql.com/downloads/workbench/5.2.html
 
Sinon personne pour mon problème de validateur de select multiple avec une option vide ? (voir qq posts au dessus)

n°1986609
theredled
● REC
Posté le 22-04-2010 à 13:09:24  profilanswer
 

Alisteroid a écrit :


Je pense que ça vient de mysql GUI tools
http://dev.mysql.com/downloads/workbench/5.2.html
 
Sinon personne pour mon problème de validateur de select multiple avec une option vide ? (voir qq posts au dessus)


Pas encore assez touché aux filters de l'admin, perso. Et la doc, [:petrus75]
Faut fouiller dans le camboui :o


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
n°1986611
masseur
Posté le 22-04-2010 à 13:12:52  profilanswer
 

Effectivement diagramme fait avec mysql wokbench, il existe même un plugin d'export en yml doctrine  (a rajouter)
http://code.google.com/p/mysql-wor [...] ne-plugin/

 
Citation :

J'ai p-e mal pigé, mais tu ne veux pas faire un ON DELETE CASCADE dans term_relationship sur la FK fk_term_relationship_term_taxonomy ?

 

Ben oui en fait c'est tout con, je sais pas pourquoi j'ai vu cela plus compliqué qu'avec la table term_taxonomy alors qu'en fait c'est le même principe.
Sorry.

 


Message édité par masseur le 22-04-2010 à 13:14:41
n°1986613
masseur
Posté le 22-04-2010 à 13:19:17  profilanswer
 

Alisteroid a écrit :


Je pense que ça vient de mysql GUI tools
http://dev.mysql.com/downloads/workbench/5.2.html
 
Sinon personne pour mon problème de validateur de select multiple avec une option vide ? (voir qq posts au dessus)


 
Ta réponse est la si j'ai bien compris.
http://www.tig12.net/downloads/api [...] class.html
 
 configure()
protected function configure(  $options = array()
$attributes = array())
Constructor.
 
Available options:
 
* model: The model class (required)
* add_empty: Whether to add a first empty value or not (false by default)
If the option is not a Boolean, the value will be used as the text value

* method: The method to use to display object values (__toString by default)
* key_method: The method to use to display the object keys (getPrimaryKey by default)
* order_by: An array composed of two fields:
* The column to order by the results (must be in the PhpName format)
* asc or desc
* query: A query to use when retrieving objects
* connection: The Doctrine connection to use (null by default)
* multiple: true if the select tag must allow multiple selections
* table_method: The method to use to display the object keys (getPrimaryKey by default)
Parameters
$options  
$attributes
 
Si j'ai mal lu sorry :)


Message édité par masseur le 22-04-2010 à 13:24:21
n°1986695
theredled
● REC
Posté le 22-04-2010 à 15:53:47  profilanswer
 

Arrrrh
 
 
Ca a l'air chiant de faire du HTML 5 avec la couche template de Symfony [:totoz]


---------------
Contes de fées en yaourt --- --- zed, souviens-toi de ma dernière lettre. --- Rate ta musique
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  6  7  8  9  10  11  12

Aller à :
Ajouter une réponse
 

Sujets relatifs
Symfony, OVH, et PHP_VERDes questions sur php
[C#] Questions de débutant...servlet : pleins de questions :/
Questions utilesQuelques questions
Probleme/questions Graphe de Scene avec Java3Dfpc télécharger un fichier et questions sur win
Questions sur week planner PHP/SQL[AS3 - newbies] Mes questions pour bien débuter
Plus de sujets relatifs à : Symfony : questions


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR