пытался скомпилировать, используя pyinstaller, но не получилось.
Потом пытался сделать по официальной документации, но выдавало ошибку
class ChatView(CreateView):
def get_context_data(self, **kwargs):
ctx = super().get_context_data(**kwargs)
messages = Message.objects.all()
messages.filter(read=False).update(read=True)
ctx.update(messages=messages)
return ctx
Вы видимо не застали, когда у них датацентрами лежало все?
Бэкап входит в стоимость VPS.
Наверняка с лимитами.
def chunkify(items, chunk_size):
for i in range(0, len(items), chunk_size):
yield items[i:i+chunk_size]
for n, s in enumerate(chunkify(''.join(arr), 1536)):
with open(str(n) + '.txt', encoding='utf-8') as fh:
fh.write(s)
import sys
def chunkify(items, chunk_size):
acc = 0
position = 0
for n, i in enumerate(items):
size = sys.getsizeof(i)
if acc + size >= chunk_size:
yield items[position:position+n]
acc = 0
position = n
else:
acc += size
chunks = chunkify(arr, 3072)
chunkify
разбивает список на трёхкилобайтные порции в памяти виртуальное машины Python. При записи в файл размер этих порций станет меньше. Если запись будет проводиться в юникоде, то незначительно, а если в однобайтной кодировке, то более чем в два раза. Чтобы разбить именно по размеру который порции будут занимать на диске, надо вместо sys.getsizeof()
использовать len()
и умножать количество символов на размер символа в байтах. можно ли тут использовать сигналы