我的应用程序的不同环境有不同的设置,例如本地,开发,舞台,制作。因此,当我在本地运行我的应用时,我将设置作为参数传递给#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 128
int main() {
FILE* fpassengers;
int passport_num;
char first_name[SIZE];
char last_name[SIZE];
printf("\nPassengers Details:\n===================\n");
printf("Please Enter Passenger`s Passport-->:");
scanf("%d", &passport_num);
getchar();
printf("\nPlease Enter Passenger`s First NAME-->:");
fgets(first_name, SIZE, stdin);
first_name[strlen(first_name)-1] = '\0';
printf("\nPlease Enter Passenger`s Last NAME-->:");
fgets(last_name, SIZE, stdin);
last_name[strlen(last_name)-1] = '\0';
fpassengers = fopen("passengers.txt", "w");
if (fpassengers == NULL) {
perror("Fopen");
exit(EXIT_FAILURE);
}
fprintf(fpassengers,"%d %s %s", passport_num, first_name, last_name);
fclose(fpassengers);
}
,例如manage.py
,确实我的所有设置都已正确初始化,例如python3 manage.py runserver 0.0.0.0:8080 --settings=myapp.settings.local
DEBUG
在我的设置文件中设置为True
,而不是False
中的defaultsettings.py
。
但是,当我尝试使用python3 manage.py test --settings=myapp.settings.local
运行测试时,DEBUG
的值设置为false,即从defaultsettings.py
加载。为什么会发生这种情况?我该如何解决这个问题?
答案 0 :(得分:0)
确保在测试中导入如下设置:
from django.conf import settings
答案 1 :(得分:0)
事实证明,当您运行测试时,您的所有设置都与设置文件(DEBUG 除外)的设置相同。 DEBUG
始终设置为False
,以使设置尽可能接近生产。
我最后关注这篇文章:Detect django testing mode
import sys
TESTING = sys.argv[1:2] == ['test']