2013-09-03 3 views
0

Я заметил в Geddy, что когда я создаю модель и последующую запись для этой модели, я получаю очень уродливый идентификатор модели, связанный с записью. Что-то вроде:Пользовательский идентификатор модели Geddy.js?

http://localhost:4000/posts/3FEEDE8D-2669-445B-AEA1-A31092A7FEDA 

Есть ли способ изменить это?

В идеале, я всегда хотел, чтобы это была какая-то строка. Где это будет для записи или пользователя:

http://localhost:4000/posts/this-is-a-post-title 
http://localhost:4000/profile/meebix 

Если это возможно, то как я:

  1. Настройка маршрутов
  2. Изменить первичный ключ для модели
  3. Другие шаги реализации я, возможно, потребуется

Спасибо!

ответ

2

Да, вы можете изменить идентификатор, если вы действительно этого хотите, но вы будете идти по проторенному пути, так что это довольно плохая идея. Пусть Гедди обрабатывает идентификаторы для вас.

То, как я это сделаю (и, конечно, сколько еще есть), должен иметь функцию «пробок», создающую слизень из заголовка сообщения и сохраняющий ее в вашей базе данных. Затем спросите об этом вместо этого в действии show. Вам не придется менять маршруты.

Это то, что ваш запрос будет выглядеть в шоу-акции:

Post.first({slug: params.id}, function (err, post) { 

params.id является то, что строка используется в маршруте

Поэтому, как только вы измените вашу show ссылки использовать слизняк вместо из ID вы будете все установлены!

+1

Отлично, спасибо Бен! –

+0

без проблем! если вам нужна дополнительная помощь, вы можете найти нас на канале #geddy irc на freenode. – Ben

Смежные вопросы