Rails, как я могу объединить несколько атрибутов модели, чтобы создать уникальную постоянную ссылку, используя Permalink_FU?

StackOverflow https://stackoverflow.com/questions/2615275

Вопрос

Can Permalink_fu комбинирует 2 или более атрибутов модели для создания уникальной постоянной ссылки?

Допустим, у меня есть бизнес-модель, эта модель содержит: Имя,: Адрес,: Телефон,: Город,: Государство: Страна и т. Д. Атрибуты.

Прямо сейчас у меня есть постоянная ссылка в этой модели только для: имя

has_permalink: name.

Так что я бы получил "/ Biz / имя". Однако я хотел бы объединить название, город и инкрементное число, если в городе более чем 1 местонахождение в городе.

Например, я хотел бы использовать:

"/ Biz / Joes-Coffee-Chick-Chicago" для постоянной ссылки

или если многопользование бизнес

"/ Biz / Starbucks-Chicago-92"

Возможно ли это с текущей плагином Permalink_FU или вилкой Permalink_fu? Или это потребует некоторая модификация в плагин Permalink_FU?

Это было полезно?

Решение

Вы можете установить атрибуты в качестве массива:

has_permalink [:one, :two, :three]

Они будут автоматически соединяться -. Отказ PERMALINK_FU также автоматически добавляет суффикс, если она уже есть запись с этой постоянной ссылкой.

Другие советы

Добавьте виртуальный атрибут вашему Business модель.

class Business < ActiveRecord::Base
  attr_accessor :perma_link_attr
  has_permalink :perma_link_attr

  def perma_link_attr
    suffix = 1
    [:name, :city, suffix].join("-")
  end

end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top