Путь к файлу после установки

Я быстро использую ide и у меня проблемы с filepath. Где разместить дополнительные файлы, необходимые для приложения? Когда я добавлю дополнительные файлы в папку / data / после установки приложения, каким будет новый путь? Он хранится в /opt/extras.ubuntu.com/projectName/share или в / usr / share /? Согласно правилам вскрытия приложений, оно должно быть в опциях.

Приложению потребуется разрешение root для записи в свои файлы? Как получить доступ к путям файлов внутри кода Python?

2
задан 14 July 2012 в 20:12

3 ответа

Я думаю, что функция get_data_path () в [appname] _lib / [appname] config.py настроена именно на это. Поэтому в Python импортируйте эту функцию в начале вашего файла:

from [appname]_lib.[appname]config.py import get_data_path

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

data_path = get_data_path()
filepath = os.path.join(data_path, 'mydatafile.css')
0
ответ дан 14 July 2012 в 20:12

Я задавался вопросом, как лучше всего это сделать в прошлом, и смотрел на пример на http://developer.ubuntu.com для медиаплеера (в наши дни ссылка кажется мертвой) , они используют модуль помощников, который есть по умолчанию при быстром использовании.

from <appname>_lib import helpers

def get_path(self):
    file_path = helpers.get_media_file("filename.ext")
    file_path = file_path.replace("file:///", "")
    return file_path

Если вы посмотрите на реальный код помощников, он просто смотрит в папку мультимедиа, из папки данных.

Возвращает путь к файлу с префиксом «file: ///», который не всегда принимается, поэтому удаление приведено выше.

0
ответ дан 14 July 2012 в 20:12

Когда вы хотите записать пути к файлам, вы должны записать их относительным образом. Итак, в Glade вы должны написать

../media/icon.png

С двумя точками (.) Вы вернетесь в папку /data. Затем вы говорите, чтобы перейти в / media и открыть icon.png. Вы должны сделать это, потому что файлы Glade .ui хранятся в /projectname/data/ui/ - отсюда вам нужно вернуться назад на 1, а затем в папку /media.

При записи файла .desktop.in (например, запись рабочего стола / приложения), например, для включения значка, вы должны написать его так:

./data/media/icon.png

Позаботьтесь о том, чтобы написать только одну точку.

О, что я забыл: приложению не нужен root-доступ для записи в файлы, и он быстро выполняет всю важную упаковку (вещь с / opt /) автоматически. Вам не нужно заботиться о /opt/.

Я надеюсь, что смогу помочь вам с вашими вопросами.

PS: обратите внимание, что встреча разработчиков приложений для Ubuntu окончена!

0
ответ дан 14 July 2012 в 20:12

Другие вопросы по тегам:

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