Termasuk Data Pakej dengan setuptools/distutils
Apabila mengkonfigurasi pemasangan pakej menggunakan setuptools, kesukaran mungkin timbul dalam menggabungkan fail_data_pakej. Artikel ini membincangkan pendekatan yang betul untuk berbuat demikian dan menyediakan penyelesaian kepada isu biasa.
Pendekatan Salah
Pendekatan yang salah melibatkan penentuan data_pakej dan tetapan include_package_data kepada Benar, sebagai dilihat dalam contoh yang disediakan:
<code class="python">setup( name='myapp', packages=find_packages(), package_data={ 'myapp': ['data/*.txt'], }, include_package_data=True, zip_safe=False, install_requires=['distribute'], )</code>
Pendekatan Betul
Isu dengan pendekatan yang salah ialah package_data hanya digunakan semasa membina pakej binari (mis., persediaan python .py bdist ...) tetapi bukan semasa membina pakej sumber (cth., python setup.py sdist ...).
Pendekatan yang betul melibatkan penggunaan MANIFEST.in untuk menentukan fail yang disertakan dalam kedua-dua pengedaran binari dan sumber . Berikut ialah contoh fail MANIFEST.in:
include *.txt recursive-include myapp/data *
Dengan menggunakan MANIFEST.in, anda boleh memastikan semua data pakej yang diperlukan disertakan tanpa mengira jenis pengedaran yang sedang dibina.
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Data Pakej dengan betul dengan setuptools/distutils?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!