django patch 解決 ["'15428560000' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] format."]


__init__.py

import datetime

from django.apps import AppConfig
from django.db.models.fields import DateTimeField

default_app_config = 'patch.PatchConfig'


def patch():
    def get_db_prep_value(self, value, connection, prepared=False):
        if isinstance(value, str):
            try:
                value = datetime.datetime.fromtimestamp(int(value))
            except:
                raise

        if not prepared:
            value = self.get_prep_value(value)
        return connection.ops.adapt_datetimefield_value(value)

    DateTimeField.get_db_prep_value = get_db_prep_value


class PatchConfig(AppConfig):
    name = 'patch'

    def ready(self):
        patch()


目錄結構
├── patch
│   └── __init__.py

settings.py

INSTALLED_APPS = [
    'patch',
    ....
   ]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM