Yii Framework Forum: [Yii2] Route vs route yii1 - urlFormat path - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

[Yii2] Route vs route yii1 - urlFormat path Rate Topic: -----

#1 User is offline   st4nny 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 345
  • Joined: 10-April 12

Posted 17 October 2017 - 10:39 AM

Ciao Ragazzi,
sono da poco migrato a yii2 per un nuovo progetto.
Mi sono imbattuto in una gestione differente delle rotte rispetto a yii 1.

Su Yii2 le rotte del tipo:
controller/action/id/7

mi restituiscono un page not found, mentre funziona correttamente questa:
controller/action?id=7


in configurazione c'ho messo:
'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'enableStrictParsing' => false,
            'rules' => [
                '<controller:\w+>/<id:\d+>' => '<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
                '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
                'login' => 'user/login',
            ],
        ],


mentre in yii1 avevo:
'urlManager' => array(
            'urlFormat' => 'path',
            'showScriptName' => false,
            'caseSensitive' => false,
            'rules' => array(
                '<controller:\w+>/<id:\d+>' => '<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
                '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
            ),
        ),


non ho trovato molto sul formato url "path".
Qualcuno di voi ha già risolto questa problematica?

Grazie e buon lavoro a tutti.
0

#2 User is offline   Fabrizio Caldarelli 

  • Master Member
  • PipPipPipPip
  • Yii
  • Group: Members
  • Posts: 1,058
  • Joined: 21-March 13
  • Location:Rome, Italy

Posted 17 October 2017 - 10:45 AM

Vista la configurazione, hai provato a richiamare:

controller/action/7


?

Così il campo id dovrebbe essere valorizzato con 7 nell'action.
Yii2 by example: my book about Yii2
https://www.packtpub...nt/yii2-example
0

#3 User is offline   st4nny 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 345
  • Joined: 10-April 12

Posted 17 October 2017 - 10:58 AM

Ciao Fabrizio,
grazie per la pronta risposta.
Si così funziona ma volevo funzionasse
anche in questa maniera
controller/action/id/7


specificando id o un altro parametro sulla get
per non rompere idealmente la compatibilità con il vecchio modello.
0

#4 User is offline   Fabrizio Caldarelli 

  • Master Member
  • PipPipPipPip
  • Yii
  • Group: Members
  • Posts: 1,058
  • Joined: 21-March 13
  • Location:Rome, Italy

Posted 17 October 2017 - 11:25 AM

Potresti provare con queste 2 soluzioni.

1) Aggiungere una rules di questo tipo:

'<controller:\w+>/<action:\w+>/id/<id:\d+>' => '<controller>/<action>',


2) Gestire un rewrite nell'.htaccess
Yii2 by example: my book about Yii2
https://www.packtpub...nt/yii2-example
0

#5 User is offline   st4nny 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 345
  • Joined: 10-April 12

Posted 18 October 2017 - 03:21 AM

Ciao Fabrizio
.htaccess lo scarterei, cercavo una soluzione yii compliant.

Il suggerimento datomi:
'<controller:\w+>/<action:\w+>/id/<id:\d+>' => '<controller>/<action>',


è una soluzione manuale.

Mettiamo il caso di avere più parametri sulla get:
controller/action/id/7/codice/asd


nel controller ho:
public function actionNomeaction($id, $codice=null)
{

}


per non avere nell'url Manager un proliferare di situazioni simili a:
'<controller:\w+>/<action:\w+>/id/<id:\d+>/codice/<codice:\w+>' => '<controller>/<action>',


Qual'è la soluzione?
0

#6 User is offline   Fabrizio Caldarelli 

  • Master Member
  • PipPipPipPip
  • Yii
  • Group: Members
  • Posts: 1,058
  • Joined: 21-March 13
  • Location:Rome, Italy

Posted 18 October 2017 - 03:29 AM

Sinceramente non vedo tante altre soluzioni
Yii2 by example: my book about Yii2
https://www.packtpub...nt/yii2-example
0

#7 User is offline   st4nny 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 345
  • Joined: 10-April 12

Posted 18 October 2017 - 05:47 AM

Grazie Fabrizio per la risolutezza! :lol:

Buon lavoro.
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users