Python супер () повышает TypeError

Вы можете попробовать это:

public interface CharacterRepository extends JpaRepository<Character, Long> {
    @Query(nativeQuery=true, value="SELECT * FROM Character WHERE pinyin like ':keyword'")
    List<Character> findByKeyword(@Param("keyword") String keyword);
}

и вызвать метод следующим образом:

repository.findByKeyword("%myKeyword%");
107
задан poke 28 May 2018 в 07:26
поделиться

2 ответа

Причина состоит в том, что super() только воздействует на модернизированные классы , который в 2.x ряд означает расширять от object:

>>> class X(object):
        def a(self):
            print 'a'

>>> class Y(X):
        def a(self):
            super(Y, self).a()
            print 'b'

>>> c = Y()
>>> c.a()
a
b
130
ответ дан poke 24 November 2019 в 03:42
поделиться

Кроме того, не используйте супер (), если Вы не имеете к. Это не "правильная вещь общего назначения", чтобы сделать с модернизированными классами, которые Вы могли бы подозревать.

существуют времена, когда Вы ожидаете множественное наследование, и Вы могли бы возможно хотеть его, но пока Вы не знаете волосатые детали MRO, лучше всего оставляете его в покое и придерживаетесь:

 X.a(self)
14
ответ дан bobince 24 November 2019 в 03:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: