Bonjour,

Je doit transformer un site existant en utilisant Symfony.
C'est mon premier projet utilisant ce framework.
La base de donnees existe deja.
J'ai utilise propel-build-schema pour genere le fichier schema.yml.
Il y a beaucoup de tables mais pour l'instant je m'interesse surtout a
la table Article.

Mon probleme est que le fichier schema.yml parait bon, j'y vois tout
les champs de la table et pas une de plus, en revanche, dans les
fichiers BaseArticle.php et BaseArticlePeer.php je vois un nouveau
champ (propriete de la classe) respectivement
protected $id;
et
const ID = 'article.ID';

Quand j'essaye d'executer une requete via la fonction suivante :
 public static function getRecentArticle()
 {
   $c = new Criteria();
   $c->add(ArticlePeer::STATUS, 'published');
   $c->add(ArticlePeer::NEWS, '1');
   $c->add(ArticlePeer::TOPIC_OID, '10');
   $c->addDescendingOrderByColumn(ArticlePeer::CREATION);
   $c->setLimit(1);
   $article = ArticlePeer::doSelect($c);
   return ($article);
 }

je recoit l'exception suivante :

[wrapped: Could not execute query [Native Error: Unknown column
'article.ID' in 'field list'] [User Info: SELECT article.OID,
article.CREATION, article.TITLE, article.BODY_RAW, article.BODY_HTML,
article.AUTHOR_NAME, article.AUTHOR_EMAIL, article.TOPIC_OID,
article.STATUS, article.LETTER_OID, article.NEWS, article.GAMES,
article.MOBILES, article.CHANNEL, article.MANAGER, article.LVN,
article.HIFI, article.SECTOR_OID, article.THEME_OID,
article.MOBILES_OID, article.GAMES_OID, article.MANAGER_OID,
article.MANAGERC_OID, article.LVN_OID, article.MOTS_CLEFS,
article.SOCIT, article.ID FROM article WHERE
article.STATUS='published' AND article.NEWS=1 AND article.TOPIC_OID=10
ORDER BY article.CREATION DESC LIMIT 1]]

Je vais modifier ma fonction pour demander seulement les champs dont
j'aurais besoin, toutefois j'aimerais resoudre ce probleme.

D'avance merci.

Vous pouvez trouver ici une partie du fichier scema.yml :
 article:
   _attributes:
     idMethod: native
   oid:
     type: INTEGER
     required: true
     autoIncrement: true
   creation:
     type: TIMESTAMP
     required: true
     default: 0000-00-00 00:00:00
   title:
     type: LONGVARCHAR
   body_raw:
     type: LONGVARCHAR
   body_html:
     type: LONGVARCHAR
   author_name:
     type: VARCHAR
     size: 100
     required: true
     default:
   author_email:
     type: VARCHAR
     size: 100
     required: true
     default:
   topic_oid:
     type: INTEGER
     required: true
     default: 0
   status:
     type: CHAR
     required: true
     default: draft
   letter_oid:
     type: INTEGER
     required: true
     default: 99
   news:
     type: TINYINT
     required: true
     default: 0
   games:
     type: TINYINT
     required: true
     default: 0
   mobiles:
     type: TINYINT
     required: true
     default: 0
   channel:
     type: TINYINT
     required: true
     default: 0
   manager:
     type: TINYINT
     required: true
     default: 0
   lvn:
     type: TINYINT
     required: true
     default: 0
   hifi:
     type: TINYINT
     required: true
     default: 0
   sector_oid:
     type: INTEGER
     required: true
     default: 0
   theme_oid:
     type: INTEGER
     required: true
     default: 0
   mobiles_oid:
     type: INTEGER
     required: true
     default: 0
   games_oid:
     type: INTEGER
     required: true
     default: 0
   manager_oid:
     type: INTEGER
     required: true
     default: 0
   managerc_oid:
     type: INTEGER
     required: true
     default: 0
   lvn_oid:
     type: INTEGER
     required: true
     default: 0
   mots_clefs:
     type: VARCHAR
     size: 255
     required: true
     default:
   socit:
     type: VARCHAR
     size: 255
     required: true
     default:
   _indexes:
     oid:
       - oid
     topic_oid:
       - topic_oid
     creation:
       - creation
     author_name:
       - author_name
     news:
       - news
       - games
       - mobiles
       - channel
       - manager
       - lvn
       - hifi
     lvn_oid:
       - lvn_oid
     fulltext:
       - title
       - body_html


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr" 
de Google Groupes.
 Pour transmettre des messages à ce groupe, envoyez un e-mail à 
l'adresse [email protected]
 Pour résilier votre abonnement à ce groupe, envoyez un e-mail à 
l'adresse [EMAIL PROTECTED]
 Pour afficher d'autres options, visitez ce groupe à l'adresse 
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à