developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.
#408 closed enhancement (fixed)
cmdline.php "Error: two many parameter"
Reported by: | hugues | Owned by: | laurentj |
---|---|---|---|
Priority: | normal | Milestone: | Jelix 1.0.3 |
Component: | jelix:core response | Version: | 1.0RC2 |
Severity: | minor | Keywords: | cmdline |
Cc: | Blocked By: | ||
Blocking: | Documentation needed: | ||
Hosting Provider: | Php version: | PHP 5.2.3 (cli) |
Description
class defaultCtrl extends jControllerCmdLine { protected $allowed_options = array( 'index' => array(), 'testage' => array() ); protected $allowed_parameters = array( 'index' => array(), 'testage' => array('plouf' => true) ); public $help = array( 'index' => 'tu sors', 'testage' => 'on test ?' ); /** * */ function index() { $rep = $this->getResponse('text'); $rep->content = 'bye'; return $rep; } /** * */ function testage() { $rep = $this->getResponse('text'); $rep->content = 'plouf = '.$this->param('plouf'); return $rep; } }
php cmdline.php "cron~default:test" help php cmdline.php "cron~default:test" 3
dans les 2 cas, j'ai l'erreur "Error: two many parameters"
Si ca peux aider, voila des infos d'un print_r de _SERVER
[argv] => Array ( [0] => cmdline.php [1] => cron~default:test [2] => 3 ) [argc] => 3
Quand je renomme le controlleur en test, j'ai toujours l'erreur sur index, mais
php cmdline.php "cron~test:test" help php cmdline.php "cron~test:test" 3
renvoie tout les
plouf = help plouf = 3
Change History (4)
comment:1 Changed 13 years ago by laurentj
- Component changed from jelix to jelix:core response
- Keywords cmdline added
- Owner set to laurentj
comment:2 Changed 13 years ago by hugues
après quelques test chez moi, c'était un problème de minuscule/majuscule
si j'ai une fonction Testage dans mon controlleur, et que je l'appelle en ligne de commande via testage ( sans le T majuscule ) il trouve bien la fonction, mais du coup ne trouve pas ses options et paramètres.
Si on lui passe des arguments du coup, comme il ne trouve pas d'option, logiquement, il me renvoie l'erreur "Error: two many parameters"
En espérant avoir été a peu près clair. Ce n'est donc en effet pas réellement un bug...
comment:3 Changed 13 years ago by laurentj
- Milestone set to Jelix 1.0.3
- Resolution set to fixed
- Status changed from new to closed
J'ai amélioré la prise en charge des erreurs dans les clis :
- maintenant il y a une erreur explicite quand il ne trouve pas la commande (case sensitive donc)
- messages d'erreurs localisés
- commentaires additionnels dans le template du controleur cli dans jelix-scripts
Fait dans le trunk et branches 1.0.x. svn 778.
comment:4 Changed 13 years ago by laurentj
- Severity changed from normal to minor
- Type changed from bug to enhancement
ça c'est normal :
De plus, pour afficher l'aide, la doc était erronée. Il faut taper :
Bref, le bug est invalide pour moi.