Как бы я сгенерировал / проанализировал этот RESTful URL в codeigniter

php codeigniter rest codeigniter-routing

2528 просмотра

2 ответа

Я новичок в MVC, будучи RESTful и CodeIgniter. Я пытаюсь проникнуть в них в свободное время, так что это во многом академический вопрос. Я пытаюсь создать URL, который будет отображать доступность определенного гостиничного номера для определенного отеля. Я подумал, что RESTful способ сделать это будет следующим:

http://url/Hotel/2/RoomAvailability/3/
  • «Отель» - контролер
  • «2» - это номер отеля
  • «RoomAvailability» - это метод
  • «3» - это номер комнаты

Как бы я настроил свой контроллер в codeigniter, чтобы справиться с этим? В настоящее время я думаю, что могу сделать одно из следующих действий:

  • Сделайте что-нибудь с mod_rewrite, чтобы перенаправить в метод RoomAvailability ()
  • Сделайте что-нибудь с методом index () и перенаправьте на метод RoomAvailability ()

На самом деле это довольно общий вопрос, так как я просто хочу иметь возможность сделать следующее:

http://url/model/method-argument/method-name/more-method-arguments

Я, честно говоря, с трудом подбираю поисковые термины, чтобы выяснить, что использовать (кроме RESTful и CodeIgniter, которые не были слишком полезны).

Я действительно просто ищу руководства; не для кого-то, чтобы написать мой контроллер для меня. Кроме того, если этот URL, на который я иду, ужасен и совсем не RESTful; пожалуйста, не стесняйтесь указывать лучший способ.

Автор: Allen Rice Источник Размещён: 17.05.2019 02:40

Ответы (2)


3 плюса

Решение

Как насчет этого URL:

http://url/hotel/method/hotel_id/room_id

Тогда вы можете сделать что-то вроде этого:

class Hotel extends Controller {

 function RoomAvailability() {
   $hotel = url_segment(3);
   $room = url_segment(4);
   do_magic();
 }

}
Автор: Jayrox Размещён: 20.02.2009 05:29

2 плюса

Ознакомьтесь с руководством пользователя CI, в частности, с разделом о маршрутизации.

https://www.codeigniter.com/user_guide/general/routing.html

Автор: davethegr8 Размещён: 20.02.2009 05:19
Вопросы из категории :
32x32