Сохранить в файл - путь к файлу.

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Есть какое то решение если полный путь к файлу заранее не известен? Есть шаблон, который должен сохранять в файл другого шаблона, но к нему заранее полный путь не известен. Оба шаблона лежат в одной папке.

Пробовал в экшене который сохраняет данные в файл указывать путь так ./папка-шаблона/file.txt и так ../папка-шаблона/file.txt не получается. Возможны какие то варианты?

Фактически надо указать путь без привязки от корня.
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
484
Благодарностей
134
Баллы
43

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Прошу прощения, не правильно выразился. Каждый шаблон в своей папке и обе эти папки лежат в одной общей папке.
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Прошу прощения, не правильно выразился. Каждый шаблон в своей папке и обе эти папки лежат в одной общей папке.
В таком случае можно так же воспользоваться {-Project.Directory-}, а после обработать регуляркой, убрав последний уровень вложенности, и положить это в переменную {-Variable.DIRECTORY-}, например.
Таким образом, у нас будет путь к общей папке, где лежат 2 папки с шаблонами.
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
484
Благодарностей
134
Баллы
43
Прошу прощения, не правильно выразился. Каждый шаблон в своей папке и обе эти папки лежат в одной общей папке.
Ну, тут как первый шаблон должен догадаться в какой там подпапке у вас второй шаблон лежит?

только если жестко прописывать подпапку:
{-Project.Directory-}/подпапка_второго_шаба/

upd. точнее, да, обработать сначала, как написал выше ibred
положить значение {-Project.Directory-} в переменную, заменить в ней подпапку текущего шаба на подпапку второго шаба - и получится путь к второму шабу.
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Мммм... Смотрите Есть два шаблона, шаблон А и шаблон Б. Каждый шаблон независим по функционалу. К ним возможно добавятся еще шаблоны но в данный момент это не важно пока.

Задача как бы проста, нужно указать шаблону А что бы дописал результаты в файл для шаблона Б который лежит в его папке. Но она проста если не передавать шаблоны в другие руки. Какие будут пути к шаблонам мне не известны а переписывать их для конкретного человека не то решение. Хочется найти универсальное. Как вариант шаблоны всегда должны лежать в одной общей папке:

C:\Путь-до-общей-папки\Может-быть-какой-угодно\Шаблоны

В таком случае пути к самим шаблонам будут выглядеть так:
C:\Путь-до-общей-папки\Может-быть-какой-угодно\Шаблоны\Шаблон-А
C:\Путь-до-общей-папки\Может-быть-какой-угодно\Шаблоны\Шаблон-Б

Из вышесказанного я пока вижу что без жесткого привязывания шаблонов к общей папке {-Project.Directory-}/Шаблон-А и {-Project.Directory-}/Шаблон-Б не обойтись?

В таком случае можно так же воспользоваться {-Project.Directory-}, а после обработать регуляркой, убрав последний уровень вложенности, и положить это в переменную {-Variable.DIRECTORY-}, например.
Таким образом, у нас будет путь к общей папке, где лежат 2 папки с шаблонами.
Перечитал несколько раз и не совсем понял реализацию Вашего решения. Можно, если не трудно на примере пояснить?
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
484
Благодарностей
134
Баллы
43
Из вышесказанного я пока вижу что без жесткого привязывания шаблонов к общей папке {-Project.Directory-}/Шаблон-А и {-Project.Directory-}/Шаблон-Б не обойтись?
Перечитал несколько раз и не совсем понял реализацию Вашего решения. Можно, если не трудно на примере пояснить?
у шаблона-А
'{-Project.Directory-}'=='C:\Путь-до-общей-папки\Может-быть-какой-угодно\Шаблоны\Шаблон-А'

чтобы в шаблоне А получить путь к шаблону-Б
нужно взять значение {-Project.Directory-} и часть "\Шаблон-А" заменить на "\Шаблон-Б"
а как иначе шаблон-А должен "догадаться" где у вас там лежат остальные шабы?
 

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113
Понял, спасибо, буду пробовать.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)