mes urls sont commeCakePHP URL Limaces Question
example.com/deals/by_city/glasgow
J'ai une action "by_city" dans un cities_controller qui a besoin de saisir la partie d'url "glasgow" et faire des choses comment puis-je le faire avec cakephp? Je veux seulement savoir comment saisir cette partie de l'URL et la stocker en variable.
Toute l'aide :) apprécié
Merci Dave
Villes contrôleur
function city_changer($CitySlug = null) {
$active = $this->City->find('first', array('conditions' => array('City.slug' => $CitySlug)));
$cities = $this->City->find('all', array('order' => array('City.name', 'City.name ASC')));
$this->set(compact('active', 'cities'));
}
Ville changer.ctp
<h2>Daily Deals from <?php echo $active['City']['name'];?></h2>
<form>
<select name="file" size="1" onchange="loadPage(this.form.elements[0])" target="_parent._top" onmouseclick="this.focus()">
<?php foreach($cities as $city) {?>
<option value="/new_avc/deals/by_city/<?php echo $city['City']['slug'];?>"><?php echo $city['City']['name'];?></option>
<?php }?>
</select>
</form>
default.ctp
<div id="header_wrapper">
<div id="navigation">
<div id="logo">
<h1>Amazing Voucher Codes</h1>
</div>
<div id="city_nav">
<?php echo $this->requestAction('/cities/city_changer/'.$city['City']['slug'], array('return'));?>
</div>
Comme il n'y a aucune base de données liée à default.ctp problème ayant obtenir la limace de passer au contrôleur :)
Pourriez-vous clarifier la question: Avez-vous une action 'by_city' dans le contrôleur' deals' et vous voulez savoir comment cette action peut utiliser le paramètre? Ou avez-vous cette URL comme une chaîne et vous avez besoin d'extraire la dernière partie de celui-ci? Ou autre chose? – JJJ
question éditée :) – Dave
Le ['SluggableBehavior'] (https://github.com/CakeDC/utils/blob/master/models/behaviors/sluggable.php) peut vous aider à créer ces parties d'URL. Il suffit de l'attacher à votre modèle et d'ajouter un champ 'slug' à votre table. – deizel