2008-10-24 8 views
6

Jestem nowy w CakePHP, ale byłem ich często zadawanymi pytaniami i poradnikami. Jest to tak proste, że po prostu nie mogę myśleć prosto:Jak uzyskać dostęp do parametru przesyłanego przez URL w moich plikach widoku w CakePHP?

Jak uzyskać dostęp do parametru wysyłanego przez URL w moich plikach widoku?

Przykład: http://example.com/view/6

Jak wziąłbym ten parametr („6”), a cykl to przez kontrolera do innej strony widoku?

Jeśli jest to zbyt skomplikowane, aby uzyskać szybką odpowiedź, w jaki sposób mogę odwołać się do 6 na stronie widoku? 6 w tej sytuacji jest „Id” wartość w mojej bazy danych, i muszę ustawić go jako „rodzica” -

Dzięki

Odpowiedz

2

URL, jak masz to, wywoła 6() metoda twojego ViewController, która nie jest poprawną nazwą metody. Być może będziesz musiał grać z trasami, aby to wykonać.

Jeśli nie chcesz skonfigurować swoje trasy, musisz kontrolera w URL, tak jak poniżej:

http://example.com/thinger/view/6 

który wezwie thingerControllerObject->view("6"). Jeśli chcesz "/ view /" przejść do innej metody, edytuj trasy. Zobacz:

5

Aby uzyskać dostęp do parametru w widoku wygląd w $this->params

16

Parametry mogą być pobierane jak ten

$this->params['pass'] 

Zwraca tablicę (indeksowaną numerycznie) parametrów URL po akcji.

// URL: /posts/view/12/print/narrow 
Array 
(
    [0] => 12 
    [1] => print 
    [2] => narrow 
) 
0

Użyj poniższy kod w pliku Widok:

$url=Router::url($this->here, true); 
$url_arr=explode("/",$url); 

Aby zobaczyć zawartość $url eksplodowały po prostu wydrukować go za pomocą Pr() jak poniżej:

pr($url_arr); 

Będzie drukuj tablicę asocjacyjną, dzięki czemu możesz uzyskać dostęp do dowolnej liczby parametrów wysyłanych przez URL.

Powiązane problemy