2013-05-31 4 views
5

. Şu bağlantıya bakın: http://www.srecipe.kr.com/articles/8FriendlyID Koreli salyangozlar

Diğer diller çalışır.

신품'dan/this-is-url gibi latin harflerle eşlenen URL'yi nasıl alabilirim?

+0

Cevaplandı mı? Ben öyle düşünmüyorum! Bu konu dışı olarak işaretlendi ve zorla kapatıldı. LÜTFEN! –

cevap

7

Tüm bu permalink çözümlerinde olduğu gibi, dostane ID, bir dizeyi bir URL güvenli dizesine dönüştürmek için parameterize yöntemini kullanır. gibi pek:

# encoding: UTF-8 
require 'active_support/all' 
puts "신품".parameterize 
=> 

ActiveSupport olmayan ASCII dizeleri değiştirmek için bir yol sağlar:

require 'active_support/all' 
puts "Oh Hai There".parameterize 
=> oh-hai-there 

sorun size soruna neden, boş bir dize ile değiştirir parametreleyebilir hangi olmayan ASCII dizeleri kullandığınızda geliyor transliterate yöntemi ile yakın bir yaklaşık.

# encoding: UTF-8 
require 'active_support/all' 
include ActiveSupport::Inflector 

puts transliterate("Ærøskøbing") 
=> AEroskobing 

Ancak, bir karakterden haberi yoksa, varsayılan olarak?

# encoding: UTF-8 
require 'active_support/all' 
include ActiveSupport::Inflector 

puts transliterate "신품" 
=> ?? 

Ancak, harf çevirisini karakterlerin nasıl işleneceğini anlayabilirsiniz.

# Store the transliterations in locales/en.yml 
en: 
    i18n: 
    transliterate: 
     rule: 
     신: "abc" 
     품: "def" 

puts transliterate "신품" 
=> "abcdef" 

Yani bir Raylar modelinde Yani, transliterate(title).parameterize kullanmak yerine sadece parameterize olabilir. Ve eğer Kore alfabesini transliterasyon bölümüne alırsanız, siz de altınya yakınsınız demektir.

+0

için http://www.rubydoc.info/gems/unidecode/1.0.0/frames adresini kullanın –

+0

Sonuç kuralını tırnak içine almayı unuttum: I18n :: InvalidLocaleData: çevirilerden yapılandırma yüklenemiyor/locales/en.yml: #

2

henüz bu çalıştı Değil ama gidiyorum: Onları denedim zaman rapor edeceğiz

.

+0

Rapor nerede? –

+0

Adil yorum. 2+ yıl sonra şimdi benim sonuçların ne olduğunu hatırlayamıyorum. Cevabını silmeli miyim yoksa birilerine yardımcı olmaları için repo listesini bırakmalı mıyım? –

+0

Romaji repo bana yardımcı oldu! Link için teşekkürler! –