1.这个设置是网上能查到的最多的,但是没解决我的问题:

Django的models.py在外部独立使用,新建一个文件夹,和monitor1目录平级
import sys,os
sys.path.append('../monitor1/')
os.environ['DJANGO_SETTINGS_MODULE'] ='monitor1.settings'

2.在项目目录中有一个和app平级的目录,但这个目录并不是app,

想要在这个目录中调用app中的models,需要这么设置:

import os, django
os.environ['DJANGO_SETTINGS_MODULE'] = '项目名.settings'
django.setup()
from show.models import company c= company.objects.filter(id=2)[0]

这是windows上的设置,换成linux时得这么设置:

import os
import django
import sys
sys.path.append(r'/data/my_env1/monitor1/')
sys.path.append(r'/data/my_env1/monitor1/monitor1')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "monitor1.settings")
django.setup()
from show.models import server_resource, program
注:/data/my_env1/monitor1/是项目路径

3.编码报错:

SyntaxError: Non-ASCII character '\xe5' in file **
Python默认是以ASCII作为编码方式的,如果在自己的Python源码中包含了中文,
或者其他非英语系的语言,此时即使你把自己编写的Python源文件以UTF-8格式保存了,
但实际上这依然是不行的,解决办法很简单,只要在文件开头加入下面代码:

# -*- coding: UTF-8 -*-

附:json文件中的键不能重复,是唯一的.

4.django-url接收参数

一、页面的跳转

在urls.py中定义name:
url(r'server_list', views.server_list, name="server_list"),
在一个页面中使用url进行跳转:
<a href="{% url 'show:server_list' %}">服务器资源信息</a>

二、页面跳转传递参数

url(r'^detail/(?P<pid>\d+)', views.program_detail, name="program_detail"),
在前端页面中定义跳转,并传递参数:
<a href="{% url 'show:program_detail' company.user_id %}">
{{ company.user.domaim_name }}</a>
视图函数中就得这么写:program_detail(request, pid)
传递多个参数的话--url(r'^detail/(?P<year>\d+)/(?P<month>\d+)/(?P<day>\d+)'
视图中也得有相应的参数来接收

Django-自己写的py文件调用models&Non-ASCII character报错&url接收参数的更多相关文章

  1. java调用本地方法的时候报错 could not find the main class:xx.program will exit

    如图所示,当在java调用本地方法的时候报错 我的解决办法是把dll文件放到System.out.println(System.getProperty("java.library.path& ...

  2. ajax 调用 .net core WebAPI,报错 400 (Bad Request) Unexpected character encountered while parsing value

    此文由博主前两天的提问及 dudu 的回答整理,地址:https://q.cnblogs.com/list/myquestion 情况说明 基于 .net core 写了一个 Web API,用 po ...

  3. 【报错】spring整合activeMQ,pom.xml文件缺架包,启动报错:Caused by: java.lang.ClassNotFoundException: org.apache.xbean.spring.context.v2.XBeanNamespaceHandler

    spring版本:4.3.13 ActiveMq版本:5.15 ======================================================== spring整合act ...

  4. (未解决)flume监控目录,抓取文件内容推送给kafka,报错

    flume监控目录,抓取文件内容推送给kafka,报错: /export/datas/destFile/220104_YT1013_8c5f13f33c299316c6720cc51f94f7a0_2 ...

  5. 如果在Yii中,使用AR查询,不直接写sql,则在使用的时候会报错

    如果在Yii中,使用AR查询,不直接写sql,则在使用的时候会报错 Student::find() ->select("id,name,from_unixtime(create_tim ...

  6. Django学习笔记3-静态文件调用

    1.settings.py 静态文件相关示例代码及说明: # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.c ...

  7. django 中单独执行py文件修改用户名

    Python文件代码 import os import django # 在environ字典里设置默认Django环境,'xxxx.settings'指Django项目的配置文件 os.enviro ...

  8. pycharm导入自己写的.py文件时,模块下方出现红色波浪线解决

    点击菜单栏的File,选择Setting, 然后,选择需要导入的.py文件“所在的目录",而非项目根目录,右键 之后再导入该.py文件就不会出现红色波浪线了.

  9. 用py文件调用操作系统的命名,粘包问题

    帅爆太阳的男人 1,执行代码 在py代码中去调用操作系统的命令 新的模块:subprocess, import subprocess r = subprocess().Popen( "dir ...

随机推荐

  1. 第6章 AOP与全局异常处理6.5-6.11 慕课网微信小程序开发学习笔记

    https://coding.imooc.com/learn/list/97.html 目录: 第6章 AOP与全局异常处理6-1 正确理解异常处理流程 13:236-2 固有的处理异常的思维模式与流 ...

  2. Linux安装OpenCV

    sudo apt-get update sudo apt-get install git git clone https://github.com/jayrambhia/Install-OpenCV ...

  3. Java并发编程的艺术 记录(三)

    Java内存模型 并发编程的两个关键问题: 1.线程之间如何通讯. 2.线程间如何同步. 两种方式:共享内存和消息传递. Java的并发采用的是共享内存模型,Java线程之间的通信总是隐式进行,整个通 ...

  4. ubuntu gcc的下载链接,比较快的。

    http://mirrors.163.com/ubuntu-releases/ http://xhmikosr.1f0.de/tools/msys/

  5. Linux学习-什么是进程 (process)

    触发 任何一个事件时,系统都会将他定义成为一个进程,并且给予这个进程一个 ID ,称为 PID,同时依据启发这个进程的用户与相关属性关系,给予这个 PID 一组有效的权限设定.从此以后,这 个 PID ...

  6. luogu2764 最小路径覆盖问题

    最小路径覆盖,看这里 #include <iostream> #include <cstring> #include <cstdio> #include <q ...

  7. Leetcode7--->Reverse Integer(逆转整数)

    题目: 给定一个整数,求将该整数逆转之后的值: 举例: Example1: x = 123, return 321Example2: x = -123, return -321 解题思路: 在这里只用 ...

  8. ICPC南京补题

    由于缺的题目比较多,竟然高达3题,所以再写一篇补题的博客 Lpl and Energy-saving Lamps During tea-drinking, princess, amongst othe ...

  9. 九度oj 题目1466:排列与二进制

    题目描述: 在组合数学中,我们学过排列数.从n个不同元素中取出m(m<=n)个元素的所有排列的个数,叫做从n中取m的排列数,记为p(n, m).具体计算方法为p(n, m)=n(n-1)(n-2 ...

  10. POJ 2033 Alphacode

    Alphacode Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 11666   Accepted: 3564 Descri ...