7921 Posts in 1359 Topics by 933 members
DataObjectManager Module
SilverStripe Forums » DataObjectManager Module » pb with dataobjectmanager testimonial example
Discuss the DataObjectManager module, and the related ImageGallery module.
Moderators: martimiz, UncleCheese, Howard, Sean, Ryan M., biapar, Willr, Ingo, swaiba, simon_w
| Go to End | Next > | |
| Author | Topic: | 2888 Views |
-
Re: pb with dataobjectmanager testimonial example

24 June 2010 at 4:35am
Tu veux que le menu soit sur toutes les pages "Testimonial?"
Sur Testimonial_show.ss, rajouter:
<% control TestimonialPage %>
<% control Testimonials %>
<a href="$Link">Testimonial $ID</a>
<% end_control %>
<% end_control %>En fait, il vaudrait la peine de mettre le contenu de "<% control Testimonials %> dans un "include" afin de ne pas te répéter sur les deux templates !
-
Re: pb with dataobjectmanager testimonial example

24 June 2010 at 4:58am
c'est ca oncle fromage
en fait je n'est pas besoin d'une page supérieure affichant le menu mais juste que le menu soit présent sur chaque testimonial .
je veux que quand on clique sur 'les temoignages' on arrive directement sur testimonial 1 qui a dans sa page le menu de tout les testimonials (pareil avec testimonial 2 etc.)Donc en fait j'essaie de n'avoir qu'une template Testimonial_show.ss qui inclus le menu général a chaque fois
est ce possible d'écrire cela :
<% control Testimonial %>
$Quote
<% end_control %><% control TestimonialPage %>
<% control Testimonials %>
<a href="$Link">Testimonial $ID</a>
<% end_control %>
<% end_control %>Merci bcp grace à toi j'avance et je comprend mieux enfin je crois
-
Re: pb with dataobjectmanager testimonial example

24 June 2010 at 5:31am
TestimonialPage_Controller:
public function index() {
return Director::redirect($this->Testimonials()->First()->Link());
} -
Re: pb with dataobjectmanager testimonial example

24 June 2010 at 5:37am
merci oncle fromage
J'essaie cela demain car je dois partir et je te dis si j'ai réussis à faire fonctionner cela
merci encore pour tout
-
Re: pb with dataobjectmanager testimonial example

24 June 2010 at 9:10pm Last edited: 24 June 2010 9:18pm
Bonjour Oncle Fromage !
Je viens d'essayer de réaliser ce dont nous avons parler hier en adaptant à mon cas mais sans succés, je ne doit pas être très doué
J'espère que tu pourra encore m'aider un peu car cela me bloque bcp ..Je te remercie par avance encore et encore
voici ou j'en suis :
- Les données des Product s'affiche correctement dans la page Product
- Les flashvar fonctionnes
- Le menu Products ne s'affiche pas seul un lien s'affiche mais il ne dirige vers rien
- Je n'arrive pas a donner comme texte aux lienx du menu la valeur Productname : <a href="$Link">$Productname $ID</a> (rien ne s'affiche).j'ai une page de redirection 'Products' qui renvoi sur la Page 01 donc le site tree ressemble à cela :
PRODUCTS (redirector page>Product 01)
-Product 01 (ProductPage)
-Product 02 (ProductPage)
-Product 03 (ProductPage)et comme nous l'avions évoqué je voudrait que sur chaque page Product les choses s'affiche ainsi
-------------------- affichage Product X ------------------------
Product 01 - <b>Product 02</b> - Product 03
Productname 02
Contenance 02
Actifs 02
Prix 02
-------------------- affichage Product X ------------------------voici les codes que j'ai fait
---------------------- Product.php ------------------------------
<?
class Product extends DataObject
{
static $db = array (
'Productname' => 'Text',
'Imagename' => 'Text',
'Presentation' => 'Text',
'Contenance' => 'Text',
'Actifs' => 'Text',
'Price' => 'Text'
);static $has_one = array (
'ProductPage' => 'ProductPage'
);public function getCMSFields_forPopup()
{
return new FieldSet(
new TextField('Productname'),
new TextField('Imagename'),
new TextField('Presentation'),
new TextField('Contenance'),
new TextField('Actifs'),
new TextField('Price')
//new TextareaField('Quote')
);
}public function Link() {
return $this->ProductPage()->Link("show/$this->ID");
}
}---------------------- ProductPage.php ------------------------------
<?
class ProductPage extends Page
{
static $has_many = array (
'Products' => 'Product'
);public function getCMSFields()
{
$f = parent::getCMSFields();
$f->addFieldToTab("Root.Content.Products", new DataObjectManager(
$this,
'Products',
'Product',
array('Productname'=>'Productname','Imagename'=>'Imagename','Presentation' => 'Presentation','Contenance' => 'Contenance','Actifs' => 'Actifs','Price' => 'Price'),
'getCMSFields_forPopup'
));
return $f;
}}
class ProductPage_Controller extends Page_Controller
{public function index() {
return Director::redirect($this->Products()->First()->Link());
}static $allowed_actions = array (
'show'
);
public function show() {
return array (
'Product' => DataObject::get_by_id("Product",$this->urlParams['ID'])
);
}}
----------------- ProductPage.ss --------------
<!-- NAVIGATION PRODUCTS -->
<div id="ProductNav">
<% control ProductPage %>
<% control Products %>
<a href="$Link">Contenance $ID</a>
<% end_control %>
<% end_control %>
</div>
<!-- NAVIGATION PRODUCTS --><!-- FICHE PRODUCT -->
<div id="Product">
<% control Product %>
Vous avez séléctioné le Product ci-dessous:
$Productname </br>
$Contenance </br>
$Actifs </br>
$Prix </br>
<a href="$Product.Link">$Productname</a>
<% end_control %>
</div>
<!-- FICHE PRODUCT --><!-- ANIMATION FLASH -->
<div id="Animation">
<object width="450" height="600" type="application/x-shockwave-flash" data="assets/swf/raineditorial.swf">
<param name="movie" value="assets/swf/raineditorial.swf" />
<param name="quality" value="high" />
<param name="wmode" value="opaque" />
<!--<param name="flashvars" value=$flashvarFunction/>-->
<!-- ANIMATION FLASH --> -
Re: pb with dataobjectmanager testimonial example

25 June 2010 at 2:04am
Le seul problème que je vois est que tu as un template "ProductPage.ss", mais ça ne semble pas être utilisé. Avec le rédirigement dans index(), tous les requêtes se terminent à ProductPage_show.ss.
-
Re: pb with dataobjectmanager testimonial example

25 June 2010 at 2:28am Last edited: 25 June 2010 2:29am
Bonjour Oncle Brie
tout d'abord je veux te dire que les codes qui sont dans le post précedent sont les seuls que j'utilise tu as donc mon shémas complet
J'ai renomé ma template' ProductPage.ss' en 'ProductPage_show.ss.'
mais j'obtiens le même résultats :
pas de menu avec les différents products dans la pageles liens sont vides en regardant la source html :
<a href="">retour</a>
mon autre problème c'est de pouvoir introduire le $Productname dans ce menu des Products or si j'écris rien ne s'inscrit surement parce que le control <% control Product %> n'est pas inclus
<!-- NAVIGATION PRODUCTS -->
<div id="ProductNav">
<% control ProductPage %>
<% control Products %>
<a href="$Link"><b>$Productname</b> $ID</a>
<% end_control %>
<% end_control %>
</div>
<!-- NAVIGATION PRODUCTS -->Je sens bien que je suis proche de la solution je n'arrive pourtant pas à faire fonctionner correctement.
Je ne veux pas abuser de ton temps non plus
merci
T
-
Re: pb with dataobjectmanager testimonial example

25 June 2010 at 3:32am
Lorsqu'on crée un nouveau template, il faut faire un ?flush=1....L'as-tu fait?
| 2888 Views | ||
| Go to Top | Next > |

