Где разместить файлы .erl и .hrl в проекте phoenix?

#soap #elixir #phoenix-framework

#soap #эликсир #phoenix-framework

Вопрос:

У меня есть проект phoenix, и я собираюсь использовать soap-запрос. для этой цели я сгенерировал заглушки из wsdl, как описано здесь . Вопрос в том, куда поместить автоматически созданные клиентские модули .erl и .hrl в проекте phoenix?

Комментарии:

1. Я считаю, что их ввод /src должен компилировать и загружать их автоматически. Можете ли вы попробовать это?

2. @Dogbert это правильно, вы должны сделать это ответом.

3. @Dogbert, я имею в виду проект, созданный mix phoenix.new, в котором нет папки /src или /include, потому что это проект для Phoenix framework

4. @Natallia Просто создать эти папки? Проект Phoenix похож на любой другой проект Mix.

5. Спасибо @Dogbert. Я пытаюсь использовать этот код в файле * .ex, но он не компилируется: salesforce_client:describeMetadata( #'P0:describeMetadata'{ asOfVersion = 3.1415927}, _Soap_headers = [], _Soap_options = [{url,"https://login.salesforce.com/services/Soap/m/37.0"}]).

Ответ №1:

erl файлы должны находиться в любом каталоге, присутствующем в erlc_paths конфигурации, и hrl в том, который указан в erlc_include_path конфигурации. Значение по умолчанию erlc_paths равно ["src"] и erlc_include_path равно "include" , поэтому вы можете просто поместить .erl файл (ы) в /src и .hrl файл (ы), /include и они будут скомпилированы mix и доступны в вашем коде Elixir .