django timezone.make_aware未正确将原始日期时间转换为时区日期时间
我的应用程序正在处理一些表示日期时间的字符串,例如:
class Entity {
public:
Entity (Vector2 position)
: position(position) { }
Vector2 position;
}
class Person : public Entity {
public:
Person(Vector2 position, std::string name)
: Entity(position), name(name) { }
std::string name;
}
class Vehicle : public Entity {
public:
Vehicle (Vector2 position, int power)
: Entity(position), power(power) { }
int power;
}
std::vector<Entity> FindEntitiesAtPosition(std::vector<Entity> entities, Vector2 position) {
std::vector<Entity> result;
for (Entity e : entities) {
if (e.position == position)
result.push_back(e);
}
return result;
}
int main() {
std::vector<Person> persons;
persons.emplace_back(Vector2(1.f, 1.f), "Alice");
persons.emplace_back(Vector2(2.f, 2.f), "Bob");
std::vector<Vehicle> vehicles;
persons.emplace_back(Vector2(1.f, 1.f), 3);
persons.emplace_back(Vector2(2.f, 2.f), 4);
// Should return person with name "Bob"
std::vector<Person> v1 = FindEntitiesAtPosition(persons, Vector2(2.f, 2.f));
// Should return vehicle with power 4
std::vector<Vehicle> v2 = FindEntitiesAtPosition(vehicles, Vector2(2.f, 2.f));
}
我正在从外部API接收这些数据,所以我无法控制接收到的值。 我正在尝试使用以下代码在python模型中设置此日期时间:
2019-05-20 15:47:19
我得到的是以下错误:
datetime_to_parse = '2019-05-20 15:47:19'
my_model.start = timezone.make_aware(datetime.strptime(datetime_to_parse, "%Y-%m-%d %H:%M:%S"))
my_model.save()
由于我正在调用make_aware,因此我希望可以使用django设置中指定的时区在带时区的datetime中自动转换datetime。
我的django设置包含以下定义:
DateTimeField Event.start received a naive datetime (2019-05-20 15:47:19) while time zone support is active
我做错什么了吗?