class MyModel(models.Model):
id = models.IntegerField(primary_key=True)
name = models.TextField(db_column='name_in_your_db', blank=True)
info = models.TextField(db_column='info_in_your_db', blank=True)
...
class Meta:
managed = False
db_table = 'profiles_groups'
# First, define the Manager subclass.
class ActiveCurrency(models.Manager):
def get_queryset(self):
return super(ActiveCurrency, self).get_queryset().filter(is_active=True)
class Currency(models.Model):
...
objects = models.Manager() # The default manager.
active_currency = ActiveCurrency() # The Active-specific manager.
Currency.objects.all() == более 100 записей
Currency.active_currency.all() == 5
from ftplib import FTP
def download_img(file, folder):
if ftp_online():
ftpConnect = FTP()
ftpConnect.connect(server_ftp, port_ftp)
ftpConnect.login(login_ftp, pass_ftp)
ftpConnect.cwd('/folder_on_ftp/Images/%s' % folder)
#st = ftpConnect.pwd()
return copy_file(ftpConnect, file, folder)
def ftp_online():
ftpConnect = FTP()
try:
ftpConnect.connect(server_ftp, port_ftp)
ftpConnect.login(login_ftp, pass_ftp)
ftpConnect.quit()
ftpConnect.close()
enable = True
except:
enable = False
return enable
def copy_file(ftp, path, folder): # ftp - через что соединяемся, path - абсолютный путь до передаваемого файла
name_file = path
try:
send_file = open('/tmp/%s' % name_file, 'rb')
ftp.storbinary('STOR ' + name_file, send_file, 1024)
send_file.close()
except IOError as err:
print(err)
return 'noimage.jpg'
return name_file
download_img(image.gif, folder_on_ftp_for_image)
url(r'^products/(?P<product_slug>[\w-]*)/$', self.detail_view.as_view(), name='detail'),
<product_slug>
class Habr(models.Model):
idn = models.Integer()
started = models.Integer()
finished = models.Integer()
input: from app.models import Habr
input: habr = Habr.objects.all()
input: from django.db.models import Sum
input: habr.values('idn').annotate(s1=Sum('started'),s2=Sum('finished'))
output: [{'idn': 1, 's2': 4, 's1': 6}, {'idn': 2, 's2': 1, 's1': 2}]