Vấn đề URL Slug với Unicode khi lập trình web
Mình có biết URL Slug để làm cho tên URL dễ hiểu hơn ví dụ
http://example.com/con%ga%con%cho sẽ thành http://example.com/con-ga-con-cho
Tuy nhiên xem các ví dụ của tiếng Anh thì họ đều làm trên ANSI không dấu như vậy rất dễ dàng để tách biêt.
Tuy nhiên trong tiếng việt thì các url này sinh ra có thể bị trùng nhau do con-ga-con-cho có thể bị sinh ra từ con gạ con chọ hoặc con gà con chó.
Bác nào có kinh nghiệm có thể cho em ví dụ một số cách xử lý được không. Nếu có của Django càng tốt
Mình thấy người ta hay thêm số vào cuối url. Số nào thì chọn số không thể trùng như số ngày tháng năm lúc tạo ra url đó chẳng hạn :3
bạn phải viết hàm replace string ví dụ như khi url của bạn có chứa ký tự á à ạ ă â thì sẽ convert về a. còn vấn đề url trùng tên nhau thì cái này buộc bạn thiết lập cho slug này là duy nhất không được trùng. mặc khác nếu bạn quản lý bằng Id thì chỉ việc cấu hình url theo định dạng như sau http://example.com/hello-world/1
Mình nghĩ là tạo id cho slug sẽ giải quyết triệt để chứ để ngày tháng nhiều khi nó vẫn xảy ra trùng.
Cám ơn bác, chắc dùng id là ok.
Mình dùng kết hợp url với id, khi duyệt thì mình đọc id ra để duyệt, url chỉ để cho đẹp.