Open Source

Społeczność

Ta strona, odświeżana co godzinę, zbiera wpisy z blogów na tematy związane z Django

Alternatywne tworzenie slug-a

Posted on Marzec 6, 2010 at 4:46 po południu by Michał Dydecki RSS

Jednym z niewątpliwych atutów django jest tworzenie bardzo ładnych i czytelnych adresów URL ( co zresztą autorzy frameworka sami 'zachwalają' na stronie domowej projektu.Najczęściej wykorzystujemy do tego tzw. slug, bo zdecydowanie lepiej wygląda adres /nowosci/pierwszy-post/ niz /nowosci/1/. Teraz tylko pojawia się kwestia tworzenia sluga. Wiadomo że musimy sobie zdefiniować takie pole w klasie ORM-a. Może to wyglądać na przykład tak: #-*- coding:utf-8 -*- from django.db import models class Article(models.Model): name = models.CharField("Nazwa" ,max_length = 255) slug = models.SlugField(max_length = 255) description = models.TextField("Opis",null=True,blank=True) def __unicode__(self): return self.name Mamy więc już nasz model, teraz musimy podłączyć wszystko do panelu administratora. Mogli byśmy to zrobić po najmniejszej linii oporu, ale dajmy na to że chcemy zaoszczędzić tłumaczenia co to jest za pole oraz co w nie należy wpisać przyszłemu użytkownikowi naszego rewolucyjnego portalu, więc zrobimy to w taki oto sposób ( plik admin.py ): # -*- coding: utf-8 -*- from django.contrib import admin from models import * class ArticleAdmin(admin.ModelAdmin): prepopulated_fields = { 'slug':('name',)} admin.site.register(Article , ArticleAdmin) Oczywiście synchronizujemy bazę danych lub korzystamy z migracji (dokładny opis wkrótce), dodajemy aplikację do settings.py ( tupla INSTALLED_APPS ), wchodzimy do panelu admina i... działa. Przez zdefiniowanie prepopulated_fields = { 'slug':('name',)} do naszego panelu administratora został ...

Przeczytaj cały wpis »

Automatyczne tworzenie miniaturek

Posted on Luty 18, 2010 at 1:40 po południu by Michał Dydecki RSS

Przy tworzeniu galerii na stronie bardzo często przydają się miniaturki, gdyż ładownie dużego zdjęcia zmniejszanego przez przeglądarkę niejako mija sie z celem i niepotrzebnie spowalnia ładowanie się strony. Z drugiej strony stworzenie oddzielnej klasy w Django do zdjęć pełnowymiarowych, a oddzielnej do miniaturek - no cóż nie dość ze nie eleganckie to raczej nasz klient nie będzie zadowolony z takiego rozwiązania. Rozwiązanie którę przedstawie poniżej jest bardzo proste , a jednocześnie całkowicie transparentne dla użytkownika końcowego który będzie chciał takie zdjęcie dodać. A więc na początku tworzymy sobie jakąs klasę dziedzicząco po models.Model, którą obarczymy ciężarem przechowywania oraz zmieniania rozmiarów naszej kolekcji. Niech za przykład posłuży coś takiego: # -*- coding: utf-8 *-* from django.db import models from django.conf import settings import Image # biblioteka PIL która bedzie nam zmieniać rozmiar import os class TestImage(models.Model): description = models.TextField("Opis zdjecia , moze ale nie musi byc :)" , blank = True , null = True) active = models.BooleanField("Aktywna?",default = True) #w polu ImageField możemy stosowac formatowanie identyczne jak w time.strftime image = models.ImageField("Fotka ",upload_to="gallery/%Y/%m/%d") def save(self): super(TestImage, self).save() # pobieramy sobie ścieżkę absolutną potrzebna żeby PIL był w stanie zapisać poprawnie zmniejszony plik p = (os.path.abspath('.'))+settings.MEDIA_URL """ Teraz małe wytłumaczenie, musimy ...

Przeczytaj cały wpis »

Django 1.2 Beta 1 już jest!

Posted on Luty 6, 2010 at 6:54 rano by djangoblog RSS

Beta Django 1.2 już jest, można je pobrać tutaj. Przypominamy, że ta wersja Django nie jest do produkcji lecz tylko dla testów!

Przeczytaj cały wpis »

Django 1.2 beta 1 wydana

Posted on Luty 6, 2010 at 4:44 rano by Biblioteka Pythona | Django RSS

Kilka godzin temu wydano Django 1.2 Beta 1 - kolejny krok do stabilnego wydania 1.2. Zmiany w Beta 1 obejmują: zmiany w testach, klas feedów, czy enkodowanie znaków , i ; w wartościach cookie. Nowości to nadawanie uprawnień na obiekt, uprawnienia dla anonimowego użytkownika oraz usprawnienia select_related. Szczegóły w notce wydania. Wersja stabilna powinna być wydana na początku marca.

Przeczytaj cały wpis »

Django-profile – nie tylko Imię i Nazwisko.

Posted on Luty 3, 2010 at 5:53 rano by djangoblog RSS

Jako, że jestem leniwy, wygodny i w ogóle – szukałem czegoś do obsługi profilów do jednego z moich projektów. Potrzebowałem możliwości wprowadzenia takich danych: Imię i Nazwisko O mnie/Zainteresowania Lokacja Data Urodzin Płeć Znalazłem coś – dostałem nawet więcej niż oczekiwałem: Imię, Nazwisko O mnie Strona WWW Płeć Data urodzenia Lokacja (Integracja z Google Maps) Avatar Zmień Hasło/E-mail/Usuń profil Jak widać całkiem ciekawa lista – nie wiem czego mógłbym jeszcze [...]

Przeczytaj cały wpis »

Migracja videotesty.pl z PHP na Django/Python

Posted on Styczeń 30, 2010 at 6:50 rano by Biblioteka Pythona | Django RSS

Podsumowanie zalet i efektów migracji serwisu videotesty.pl na Django/Python

Przeczytaj cały wpis »

Django-SocialAuth

Posted on Styczeń 18, 2010 at 3:30 po południu by djangoblog RSS

Django-SocialAuth to aplikacja umożliwiająca logowanie do serwisu używających danych z Facebook-a, Twitter-a, Yahoo, Gmail-a czy Openid, działa znakomicie z Django auth. Tutaj znajdziemy demo a tutaj kod aplikacji. Używanie Django-SocialAuth jest bardzo proste. Aplikacja jest udostępniana na licencji AAS. Jak tego używać. Aby zacząć używać tej aplikacji potrzebujemy bibliotek: Python-Openid Python-yadis Python-oAuth No i to właściwie wszystko. Klucze API [...]

Przeczytaj cały wpis »

Pobieranie statusów z Twittera

Posted on Styczeń 15, 2010 at 5:23 po południu by djangoblog RSS

Do wyświetlania najnowszych statusów z Twittera użyjemy API, korzystając z biblioteki python-twitter. Instrukcję oraz pliki znajdziemy na google code. Aby wszystko działało musimy sprecyzować gdzie Django ma szukać naszego pliku koordynującego cały proces.

Przeczytaj cały wpis »

Django i formularze

Posted on Styczeń 14, 2010 at 10:18 po południu by restlessbeing RSS

Zbiegi okoliczności jak najbardziej istnieją. Nie dalej jak wczoraj wgryzałem się w różne ciekawe triki dotyczące wykorzystania formularzy, a w dniu dzisiejszym niejaki Shabda opublikował artykuł na ten właśnie temat. Artykuł na tyle dobry, że skłonił mnie do wrzucenia tu informacji o nim oraz o jeszcze kilku ciekawostkach związanych z formularzami. Zapraszam do zapoznania się z poniższymi materiałami: Shabda o tym co można zrobić z formularzami James Bennet o dynamicznych formularzach django-uni-form czyli formularze w divach

Przeczytaj cały wpis »

Hosting dla Django

Posted on Styczeń 14, 2010 at 5:52 po południu by djangoblog RSS

Django (Python) jest używane rzadziej od PHP, najczęstszym tego powodem jest problem z hostingiem. Przynajmniej tak niektórzy myślą, ja problemu nie zauważam. Nasz projekt możemy hostować gdziekolwiek gdzie mamy Pythona i któreś z wymienionych modułów: Apache + mod_python SCGI + Cherokee Apache + mod_fcgid Lighttpd nginx/FastCGI Przydatny jest również dostęp przez Shell. Istnieje przydatna lista amerykańskich Django-Friendly serwerów którą znajdziemy [...]

Przeczytaj cały wpis »

Pisz notki na Django Blog

Posted on Styczeń 14, 2010 at 4:33 po południu by djangoblog RSS

Ostatnio dostałem kilka maili z pytaniami czy można napisać notkę na tego bloga. Otóż można, wystarczy zarejestrować się pod tym linkiem i później zalogować tutaj (linki można znaleźć w menu bocznym). I wtedy można zwyczajnie napisać posta, jeśli ktoś ma/miał bloga na WordPressie, doskonale sobie poradzi. Wpisy są później moderowane przeze mnie, poprawiane literówki itp. [...]

Przeczytaj cały wpis »

Zmiany. Serwer, domena, silnik – wszystko.

Posted on Styczeń 13, 2010 at 7:40 po południu by djangoblog RSS

Po dwóch dniach męki z perfidną skórką, home.pl i moim dostawcą internetu który nie chciał zflushować DNS’ów jesteśmy. Jesteśmy na WordPressie więc teraz możemy dosłownie wszystko! Co prawda to nie jest Django ale po co pisać coś co już jest i do tego jest bardzo dobre. Już niedługo ruszy Forum – pracujemy jeszcze nad skórką i szukamy [...]

Przeczytaj cały wpis »

Przejdziemy na WordPressa

Posted on Styczeń 12, 2010 at 3:15 po południu by djangoblog RSS

Witam, jako, że na Bloggerze mamy bardzo małe możliwości – przechodzimy na WordPressa. Serwer oraz domena już została kupiona, jutro podepniemy domenę pod DNS-y BlogSpota żeby wujek Gugle zaindeksowały nas ładnie i nie posądziły o duplicate content i myślę, że za dwa dni będziemy już blogiem z prawdziwego zdarzenia. Mam też kilka pomysłów w zanadrzu więc [...]

Przeczytaj cały wpis »

Python vs. PHP

Posted on Styczeń 12, 2010 at 3:13 po południu by djangoblog RSS

W dzisiejszej będę bronił Django. Może bronił to złe określenie ale wyjaśnimy sobie kilka rzeczy które zostały opisane zostały opisane na blogu Mateusza Żeromskiego w notce Python okiem PHP. Nie mam zamiaru nikogo pognębiać, każdy ma prawo i powinien mieć swoje zdanie. Czyli opiszemy czego Django NIE ma. Po kolei. Mam świadomość, że mogę zostać za to [...]

Przeczytaj cały wpis »

Django Snippets

Posted on Styczeń 12, 2010 at 3:12 po południu by djangoblog RSS

Django Snippets czyli kawałki użytecznego kodu które można wykorzystać w swoim projekcie, jakieś funkcje, (tutaj) wbrew pozorom nie koniecznie w Pythonie. Możemy tu znaleźć snippety w JavaScripcie, HTML-u (Templaty dla Django itp.), SQL-u oraz Pythonie. Teraz powinno powstać nowe pojęcie w stylu DRO (Don’t Repeat Others). Szczerze mówiąc strona jest trochę mało przejrzysta (mam na [...]

Przeczytaj cały wpis »