• Как отправить post запрос в action в yii2?

    @tuerxor
    Максим Тимофеев:
    Да, просто как-то, когда прочитал про форму, подсознательно сразу всплыла yii-форма. И про безопасность согласен, просто решил это опустить в рамках вопроса.
    Если, кстати, все-таки ajax запрос и отключать csrf не хочется, то можно добавить параметр _csrf
    со значением yii.getCsrfToken()
  • Как правильно использовать импорт в Go?

    @tuerxor Автор вопроса
    Относительно моего вопроса я так понял, что нужно вынести все интерфейсы в отдельный пакет (домен), примерно как посоветовал nikonor
  • Как правильно использовать импорт в Go?

    @tuerxor Автор вопроса
    Похоже, что пока что только ваш вариант удовлетворяет моим условиям. В этом случае, я так полагаю, нет ничего плохого, чтобы в реализациях ссылаться на интерфейсы из папки `common`, циклов все равно не будет.
  • Как правильно использовать импорт в Go?

    @tuerxor Автор вопроса
    Повторю комментарий к ответу mukizu:

    А если у меня есть некоторый интерфейс, который в одном из своих методов предполагает возврат сущности, которая реализует Api интерфейс(или принимает, как аргумент)? И этот интерфейс тоже реализуется в одном из api и возвращает свою реализацию, как это реализовать?

    api.go
    type CommonApi interface {
      Request() error
    }


    someInterface.go

    type CommonSome interface {
    	Some() CommonApi
    }


    api1.go
    import "errors"
    
    type Api struct {}
    
    func (Api) Request() error  {
      return errors.New("Test")
    }
    
    type SomeThingWithApi struct {}
    
    func (SomeThingWithApi) Some() Api {
    	return Api{}
    }


    Go будет жаловаться, что ожидает, что вернется CommonApi, а возвращается реализация.
  • Как правильно использовать импорт в Go?

    @tuerxor Автор вопроса
    А если у меня есть некоторый интерфейс, который в одном из своих методов предполагает возврат сущности, которая реализует Api интерфейс(или принимает, как аргумент)? И этот интерфейс тоже реализуется в одном из api и возвращает свою реализацию, как это реализовать?

    api.go
    type CommonApi interface {
      Request() error
    }


    someInterface.go

    type CommonSome interface {
    	Some() CommonApi
    }


    api1.go
    import "errors"
    
    type Api struct {}
    
    func (Api) Request() error  {
      return errors.New("Test")
    }
    
    type SomeThingWithApi struct {}
    
    func (SomeThingWithApi) Some() Api {
    	return Api{}
    }


    Go будет жаловаться, что ожидает, что вернется CommonApi, а возвращается реализация.