anussebedernipes

Untitled

Nov 27th, 2015
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.48 KB | None | 0 0
  1. #models.py в модель регистрации потом вкручу проверку, второе поле для пароля и все остальное что требуется
  2. class UserRegistration(models.Model):
  3.     username = models.CharField(blank=False, max_length=28, help_text='имя пользователя')
  4.     password = models.CharField(blank=False, max_length=60, help_text='пароль')
  5.  
  6.     def __str__(self):
  7.         return self.title
  8.  
  9.  
  10. class Advert(TimeStampedModel):
  11.     class Meta:
  12.         verbose_name = 'вакансия'
  13.         verbose_name_plural = 'вакансии'
  14.  
  15.     title = models.CharField(verbose_name='название вакансии', max_length=127, blank=False,
  16.                              help_text='краткое описание отражающее суть вакансии')
  17.     description = models.TextField(verbose_name='описание вакансии', blank=True)
  18.     requirements = models.TextField(verbose_name='требования к соискателю', blank=True)
  19.     salary = models.CharField(verbose_name='зарплата', max_length=50, blank=False,
  20.                              help_text='до пятидесяти символов', default='')
  21.     city = models.CharField(verbose_name='город', max_length=50, blank=False,
  22.                             help_text='название города', default='')
  23.     author = models.ForeignKey(User, verbose_name='автор вакансии', blank=True, null=True)
  24.  
  25.     def __str__(self):
  26.         return self.title
  27.  
  28.     @models.permalink
  29.     def get_absolute_url(self):
  30.         return 'advert-detail', (self.pk,)
  31.  
  32.  
  33. class UserLogin(models.Model):
  34.     username = models.CharField(blank=False, max_length=28, help_text='имя пользователя')
  35.     password = models.CharField(blank=False, max_length=60, help_text='пароль')
  36.  
  37.     def __str__(self):
  38.         return self.title
  39.  
  40. #views.py
  41. class Registration(CreateView):
  42.     template_name = 'adverts/registration.html'
  43.     model = models.UserRegistration
  44.     fields = ('username', 'password')
  45.  
  46.  
  47. class AdvertCreate(CreateView):
  48.     model = models.Advert
  49.     fields = ('title', 'description', 'requirements', 'salary', 'city')
  50.  
  51.     def form_valid(self, form):
  52.         if self.request.user.is_anonymous():
  53.             form.instance.author = None
  54.         else:
  55.             form.instance.author = self.request.user
  56.         return super(AdvertCreate, self).form_valid(form)
  57.  
  58.  
  59. class Login(CreateView):
  60.     template_name = 'registration/login.html'
  61.     model = models.UserLogin
  62.     fields = ('username', 'password')
  63.  
  64. #urls.py
  65. from django.conf.urls import include, url
  66. from django.contrib import admin
  67. from django.conf.urls.static import static
  68. from django.conf import settings
  69.  
  70. from adverts import views
  71.  
  72. urlpatterns = [
  73.     url(r'^$', views.AdvertList.as_view(), name='home'),
  74.     url(r'^advert/(?P<pk>\d+)/$', views.AdvertDetail.as_view(), name='advert-detail'),
  75.     url(r'^about/$', views.AboutUs.as_view(), name='about-us'),
  76.     url(r'^conditions/$', views.Conditions.as_view(), name='conditions'),
  77.     url(r'^registration/$', views.Registration.as_view(), name='registration'),
  78.     url(r'author/add/$', views.AdvertCreate.as_view(), name='advert-add'),
  79.     url('^', include('django.contrib.auth.urls')),
  80.     url(r'^admin/', include(admin.site.urls)),
  81.     url(r'^login/$', views.Login.as_view(), name='login')
  82. ]
  83.  
  84. urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Advertisement
Add Comment
Please, Sign In to add comment