Разрешен ли встроенный код в шаблонах Jinja?

Я использую Jinja на своем сайте и мне это нравится.

Я столкнулся с простой необходимостью. Как отобразить текущую дату? Есть ли способ встроить какой-нибудь Python код в шаблон Jinja?

import datetime
now = datetime.datetime.utcnow()
print now.strftime("%Y-%m-%d %H:%M")

В этой статье говорится нет , но предлагает использовать макрос или фильтр?

На самом деле? Мы должны прибегнуть ко всему этому? Хорошо, как бы это выглядело в этом случае?

-121--981116-

Ошибка: «Невозможно добавить сопоставление для новости keyPath, одно уже существует»... Я использую RestKit для получения данных из Restful Web Service. С плоским файлом это отлично работает. Моя проблема начинается, если я хочу получить ответ на вложенный JSON. Мой JSON выглядит так: [{«homename»: «Чужой,»...

Я использую RestKit для получения данных из Restful Web Service. С плоским файлом это отлично работает. Моя проблема начинается, если я хочу получить ответ на вложенный JSON.

Мой JSON выглядит следующим образом:

[{"homename":"Alien","created_at":"2011-09-15T12:46:37Z", "updated_at":"2011-09-15T12:46:37Z","gametype":"Final match", "id":1,"date":"2016-10-10","guestname":"Predator", "news":[{"minute":null,"created_at":"2011-09-15T13:19:51Z","player":null,"title":"Title", "updated_at":"2011-09-15T13:19:51Z","id":1,"bodytext":"News","game_id":1},{"minute":null,"created_at":"2011-09-15T13:22:06Z","player":null,"title":"New news","updated_at":"2011-09-15T13:22:06Z","id":2,"bodytext":"Old socks","game_id":1},{"minute":null,"created_at":"2011-09-15T13:26:32Z","player":null,"title":"another title","updated_at":"2011-09-15T13:26:32Z","id":3,"bodytext":"Bodytext 2","game_id":1},{"minute":null,"created_at":"2011-09-22T12:35:19Z","player":null,"title":"comment","updated_at":"2011-09-22T12:35:19Z","id":4,"bodytext":"body of the comment","game_id":1}]}]

Со следующим кодом я хотел бы получить отображенные данные.

RKLogConfigureByName("RestKit/Network*", RKLogLevelTrace);
// Initialize RestKit
RKObjectManager* objectManager = [RKObjectManager objectManagerWithBaseURL:@"http://X.X.X.X:3000"];

// Enable automatic network activity indicator management
//objectManager.client.requestQueue.showsNetworkActivityIndicatorWhenBusy = YES;


RKObjectMapping* newsMapping = [RKObjectMapping mappingForClass:[News class]];
[newsMapping mapKeyPath:@"id" toAttribute:@"id"];
[newsMapping mapKeyPath:@"minute" toAttribute:@"minute"];
[newsMapping mapKeyPath:@"title" toAttribute:@"title"];
[newsMapping mapKeyPath:@"bodytext" toAttribute:@"bodytext"];

// Setup our object mappings
RKObjectMapping* gameMapping = [RKObjectMapping mappingForClass:[Game class]];
//  [gameMapping mapKeyPath:@"id" toAttribute:@"id"];

[gameMapping mapKeyPath:@"guestname" toAttribute:@"guestname"];
[gameMapping mapKeyPath:@"homename" toAttribute:@"homename"];
[gameMapping mapKeyPath:@"date" toAttribute:@"date"];
[gameMapping mapKeyPath:@"gametype" toAttribute:@"gametype"];
[gameMapping mapKeyPath:@"news" toAttribute:@"news"];

[gameMapping mapKeyPath:@"news" toRelationship:@"news" withMapping:newsMapping];
[objectManager.mappingProvider setMapping:gameMapping forKeyPath:@"games"];

Заявление [gameMapping mapKeyPath: @ «news» toОтношения: @ «news» wterMapping: newsMapping]; вызывает исключение во время выполнения, и я не могу понять, почему:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Unable to add mapping for keyPath news, one already exists...'

Кто-то видит, что я делаю неправильно? Неверно ли отношение для отношения 1: n?

7
задан devrobf 24 October 2015 в 14:37
поделиться