Какие ограничения есть у шаблонов NDjango по сравнению с обычными шаблонами Django? - PullRequest
3 голосов
/ 22 мая 2009

Есть ли различия, ограничения или ошибки между шаблонами NDjango и Django? Я особенно заинтересован в их реализации в будущих проектах ASP.NET MVC.

Я уверен, что не смогу использовать какие-либо из моих пользовательских тегов шаблонов, которые я написал для Django, но смогу ли я перенести их на NDjango?

1 Ответ

4 голосов
/ 24 мая 2009

да, вы бы. Вы можете расширить набор тегов и фильтров по умолчанию, написав свой собственный и зарегистрировав их при запуске приложения. есть только одна вещь, которую нужно иметь в виду - фильтры должны были быть очень легко расширены, и поэтому вам просто нужно реализовать один из двух простых интерфейсов (ISimpleFilter для фильтров без параметров или IFilter для фильтров с 1 параметром). Для тегов концепция та же, но так как сам NDjango написан на F #, интерфейс ITag немного сложнее использовать из C # или VB. Это конечно выполнимо, но немного грязно. С F # это очень просто.

в f # это выглядит так:

/// A single tag implementation
and ITag = 
    /// Transforms a {% %} tag into a list of nodes and uncommited token list
    member Perform: Lexer.BlockToken -> IParser -> 
             Lexer.Token seq -> (Node list * Lexer.Token seq)

в c #, это выглядит так:

    public Tuple<FSharpList<Interfaces.Node>, IEnumerable<Lexer.Token>>
              Perform(Lexer.BlockToken __p1, Interfaces.IParser __p2,
                   IEnumerable<Lexer.Token> __p3)

еще раз - фильтры просты в c # - на самом деле, большинство фильтров, которые идут с ним, написаны на c #. теги легко в f #, но немного грязнее в c #

С точки зрения ограничений, нет никаких известных, не то, что я знаю.

полное раскрытие - я один из авторов ndjango.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...