„Slug” to sposób na wygenerowanie prawidłowego adresu URL, zwykle z wykorzystaniem już uzyskanych danych. Na przykład ślimak używa tytułu artykułu do wygenerowania adresu URL. Radzę wygenerować ślimak za pomocą funkcji, biorąc pod uwagę tytuł (lub inny fragment danych), zamiast ustawiać go ręcznie.
Przykład:
<title> The 46 Year Old Virgin </title>
<content> A silly comedy movie </content>
<slug> the-46-year-old-virgin </slug>
Teraz udawajmy, że mamy model Django, taki jak:
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField(max_length=1000)
slug = models.SlugField(max_length=40)
Jak odwołujesz się do tego obiektu za pomocą adresu URL i znaczącej nazwy? Możesz na przykład użyć Article.id, aby adres URL wyglądał następująco:
www.example.com/article/23
Lub możesz odwołać się do tytułu w ten sposób:
www.example.com/article/The 46 Year Old Virgin
Ponieważ spacje nie są poprawne w adresach URL, należy je zastąpić %20
, co powoduje:
www.example.com/article/The%2046%20Year%20Old%20Virgin
Obie próby nie skutkują bardzo znaczącym, łatwym do odczytania adresem URL. To jest lepsze:
www.example.com/article/the-46-year-old-virgin
W tym przykładzie the-46-year-old-virgin
jest to ślimak: jest on tworzony z tytułu przez zmniejszenie wszystkich liter i zamianę spacji na łączniki -
.
Zobacz także adres URL tej strony internetowej na inny przykład.
Jeśli mogę podać kontekst historyczny:
Termin „ślimak” odnosi się do odlewu metalu - w tym przypadku ołowiu - z którego wykonano czcionki prasowe. Na każdym papierze fabryka czcionek była regularnie ponownie topiona i przekształcana w świeże formy, ponieważ po wielu wydrukach zużyły się. Praktykanci tacy jak ja rozpoczęli tam swoją karierę i wspięli się na szczyt (już nie).
Typografy musiały komponować tekst artykułu w sposób odwrócony, z wiodącymi znakami ułożonymi w mądry sposób. Tak więc w czasie drukowania litery byłyby prosto na papierze. Wszystkie typografy potrafiły czytać gazety w odbiciu lustrzanym tak szybko, jak drukowane. Dlatego ślimaki (podobnie jak ślimaki), a także powolne historie (ostatnie do naprawienia), czekały na ławce wiele osób, które można było rozpoznać jedynie po ich literach, głównie cały tytuł był bardziej czytelny. Kilka „gorących” wiadomości czekało tam na ławce, na ewentualną korektę w ostatniej chwili (wieczór) przed ostatnim montażem i ostatecznym wydrukowaniem.
Django wyszedł z biura czasopisma Lawrence w Kansas. Tam gdzie prawdopodobnie wciąż trwa jakiś żargon drukarski. A-django-entuzjasta - i - przyjazny-stary-ślimak-chłopiec-z-Francji.
źródło
Termin „ślimak” pochodzi od świata produkcji gazet.
To nieformalna nazwa nadana historii podczas procesu produkcyjnego. W miarę jak historia kręci się od reportera rytmicznego (zakładając, że w ogóle istnieją ?), Przez edytora, aż po „prasy drukarskie”, jest to nazwa, do której się odwołuje, np. „Czy naprawiłeś te błędy w” historia Kate-and-Williamiam? ”.
Niektóre systemy (takie jak Django) używają ślimaka jako części adresu URL do zlokalizowania historii, czego przykładem jest
www.mysite.com/archives/kate-and-william
.Nawet przepełnienie stosu robi to samo, z GEB-ish (a) samo-referencyjnym
/programming/427102/what-is-a-slug-in-django/427201#427201
, chociaż możesz zastąpić ślimakblahblah
i nadal będzie to w porządku.Może nawet datować się wcześniej, ponieważ scenariusze miały na początku każdej sceny „slug linie”, co zasadniczo stanowi tło dla tej sceny (gdzie, kiedy i tak dalej). Jest bardzo podobny, ponieważ jest zapowiedzią lub preambułą tego, co następuje.
Na maszynie linotypowej ślimak był kawałkiem metalu o jednym wierszu, który został utworzony z pojedynczych liter. Dzięki jednemu ślimakowi dla całej linii znacznie poprawiło to stare komponowanie postaci po znaku.
Chociaż poniższe przypuszczenia są czystą hipotezą, wczesne znaczenie ślimaka dotyczyło sfałszowanej monety (którą należałoby jakoś nacisnąć). Mogłem sobie wyobrazić, że to użycie zostanie przekształcone w termin drukowany (ponieważ ślimak musiał być tłoczony przy użyciu oryginalnych znaków), a stamtąd zmieniłbym definicję „kawałka metalu” na definicję „podsumowania historii”. Stamtąd jest krótki krok od właściwego drukowania do świata online.
(a) „Godel Escher, Bach” autorstwa Douglasa Hofstadtera , który (przynajmniej) uważam za jedno z wielkich współczesnych dzieł intelektualnych. Powinieneś także sprawdzić jego inne dzieło „Metamagical Themas”.
źródło
Pole informacji o pracy w Django służy do przechowywania i generowania prawidłowych adresów URL dla tworzonych dynamicznie stron internetowych.
Podobnie jak sposób dodania tego pytania do Przepełnienia stosu i wygenerowania strony dynamicznej, a kiedy zobaczysz w pasku adresu, zobaczysz tytuł pytania z „-” zamiast spacji. To jest dokładnie praca w polu ślimaków.
źródło
Od tutaj .
źródło
Jest to opisowa część adresu URL, która ma na celu uczynienie go bardziej ludzkim, ale niekoniecznie wymagany przez serwer WWW - w Co to jest „ślimak” w Django? jest to „in-django-what-is-a-slug”, ale nie jest on używany do określenia wyświetlanej strony (przynajmniej na tej stronie)
źródło
Slug to przyjazna dla adresu URL krótka etykieta dla określonej zawartości. Zawiera tylko litery, cyfry, znaki podkreślenia lub łączniki. Kule są zwykle zapisywane z odpowiednią zawartością i są przekazywane jako ciąg adresu URL.
Slug można tworzyć za pomocą SlugField
Dawny:
Jeśli chcesz użyć tytułu jako ślimaka, django ma prostą funkcję o nazwie
slugify
Jeśli potrzebuje wyjątkowości, dodaj
unique=True
w polu ślimaka.na przykład z poprzedniego przykładu:
Czy jesteś leniwy, aby wykonać proces ślimak? nie martw się, ta wtyczka ci pomoże. django-autoslug
źródło
Również auto ślimak na django-admin. Dodano w ModelAdmin:
Jak tutaj:
źródło
ślimak
Krótka etykieta na coś, zawierająca tylko litery, cyfry, podkreślenia lub łączniki. Są one zwykle używane w adresach URL. Na przykład w typowym adresie URL wpisu na blogu:
https://www.djangoproject.com/weblog/2008/apr/12/spring/ ostatni bit (wiosna) to ślimak.
źródło