django如何使用应用外的表作为外键,django如何使用mysql

  django如何使用应用外的表作为外键,django如何使用mysql

  首先,确保它在MIDDLEWARE_CLASSES中包含“django . contrib . sessions . MIDDLEWARE . session MIDDLEWARE”。如果不想使用进程进程,可以删除该物料。

  配置session引擎

  默认情况下,django框架会将会话数据存储在数据库中(在django框架默认创建的模型中,有一个模型是存储会话的,这就是为什么你需要在使用数据库之前创建它。使用django . contrib . sessions . models . session模型)。与其他从数据库存储会话的方式相比,它的速度较慢,因此可以配置django将会话存储在文件系统或缓存中。

  使用数据库支持的session

  如果要将会话存储在数据库中,需要将“django.contrib.sessions”添加到INSTALLED_APPS设置中。并创建一个表来存储会话数据。

  使用基于缓存的会话

  使用缓存存储会话将比使用数据库更快。

  要使用缓存来存储会话,您必须首先配置缓存。

  缺点:本地内存缓存不能长时间保存数据,不是一个好的选择。而且,直接使用文件或数据库比缓存文件或数据库更快。本地缓存系统不是多进程安全的。

  可以在缓存中定义多个缓存,Django使用默认的缓存,如果要使用其他缓存,可以将SESSIONCACHEALIAS设置为缓存的名称。

  配置缓存后,有两种缓存可供选择。

  对于简单的缓存会话,可以将SESSIONENGINE设置为“django . contrib . sessions . backends . cache”。这种积极的方式是将数据缓存在内存中,而不是永久存储。如果缓存已满或缓存服务器重新启动,缓存的数据可能会被清除。

  要缓存持久数据,应该使用数据库。将SESSIONENGINE设置为“django”。贡献。会话。后端。CachedDB。写入数据时,应该使用缓存。读取时,应该先读取缓存中的数据。如果缓存中的数据被清除,应该从数据库中读取。

  两种缓存方法都很快,简单的更快,因为没有数据持久性。

  注意:在1.7版之前,cacheddb总是使用默认缓存,而不是SESSIONCACHEALIAS。

  使用缓存的示例:

  SESSION _ ENGINE= django . contrib . sessions . backends . cache

  SessionCACHES= default #表示使用缓存的别名。在贮藏处寻找它们。有两个选项:默认和db1。

  缓存={

  默认 :{

  后端 : django . core . cache . backends . memcached . memcachedcache ,

  位置 :[

  172.19.26.240:11211,

  172.19.26.242:11211,

  ]

  },

  db1:{

  后端 : django . core . cache . backends . memcached . memcachedcache ,

  位置 :[

  172.19.26.240:11211,

  172.19.26.242:11211,

  ]

  }

  }附加内容

  缓存的格式,默认:

  {

  默认 :{

  后端 : django . core . cache . backends . loc men . locmemcache ,

  }

  }

  字典包含所有缓存使用的设置。它是一个嵌套字典,其内容将缓存别名映射到包含单个缓存选项的字典。

  缓存设置必须配置“默认”缓存;您还可以指定任意数量的附加缓存。如果您使用本地内存缓存以外的其他缓存后端,或者您需要定义多个缓存,则需要添加其他缓存条目。以下是可用的缓存选项。

  后端

  默认值:“”(空字符串)

  要使用的缓存后端。内置缓存后端是:

   django . core . cache . backends . db . database cache

   django . core . cache . backends . dummy . dummy cache

   django . core . cache . backends . file based . filebasedcache

   django . core . cache . backends . locmem . locmemcache

   django . core . cache . backends . memcached . memcachedcache

   django . core . cache . backends . memcached . pylibmccache

  通过将BACKEND设置为缓存后端类的全限定路径(即my package . backends . whatever . whatever cache),可以使用Django没有提供的缓存后端。)。

  基于文件的会话

  使用基于文件的会话“django . contrib . sessions . backends . file”以及SESSIONENGINE和SESSIONFILE_PATH来设置文件位置。如果未设置,则默认存储位置为,其默认值来自tempfile.gettempdir()的输出,在大多数情况下为/tmp。

  使用基于Cookie的session

  若要使用基于cookie的会话,请将SESSIONENGINE设置为“django . contrib . sessions . backends . signed Cookie”。此时,将使用Django的加密签名工具和SECRET_KEY设置来存储会话数据。

  建议将SESSIONCOOKIEHTTPONLY设置为True,以防止从JavaScript访问存储的数据。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: