मैं फ़ॉर्म के साथ भेजी गई फ़ाइल को पकड़ने की कोशिश कर रहा हूं और इसे सहेजने से पहले कुछ संचालन करने की कोशिश कर रहा हूं। तो मुझे temp निर्देशिका में इस फ़ाइल की एक प्रति बनाने की आवश्यकता है, लेकिन मुझे नहीं पता कि इसे कैसे पहुंचाया जाए। शटल के फ़ंक्शन इस फ़ाइल की प्रतिलिपि बनाने में विफल रहते हैं, क्योंकि इसमें कोई रास्ता नहीं है। तो क्या इस ऑपरेशन को किसी अन्य तरीके से करने का कोई तरीका है?डिस्क में InMemoryUploadedFile ऑब्जेक्ट को कॉपी करने के लिए कैसे करें
मेरे कोड:
image = form.cleaned_data['image']
temp = os.path.join(settings.PROJECT_PATH, 'tmp')
sourceFile = image.name # without .name here it wasn't working either
import shutil
shutil.copy(sourceFile, temp)
कौन सा उठता है:
Exception Type: IOError at /
Exception Value: (2, 'No such file or directory')
और डिबग:
# (..)\views.py in function
67. sourceFile = image.name
68. import shutil
69. shutil.copy2(sourceFile, temp) ...
# (..)\Python26\lib\shutil.py in copy2
92. """Copy data and all stat info ("cp -p src dst").
93.
94. The destination may be a directory.
95.
96. """
97. if os.path.isdir(dst):
98. dst = os.path.join(dst, os.path.basename(src))
99. copyfile(src, dst) ...
100. copystat(src, dst)
101.
▼ Local vars
Variable Value
dst
u'(..)\\tmp\\myfile.JPG'
src
u'myfile.JPG'
# (..)\Python26\lib\shutil.py in copyfile
45. """Copy data from src to dst"""
46. if _samefile(src, dst):
47. raise Error, "`%s` and `%s` are the same file" % (src, dst)
48.
49. fsrc = None
50. fdst = None
51. try:
52. fsrc = open(src, 'rb') ...
53. fdst = open(dst, 'wb')
54. copyfileobj(fsrc, fdst)
55. finally:
56. if fdst:
57. fdst.close()
58. if fsrc:
▼ Local vars
Variable Value
dst
u'(..)\\tmp\\myfile.JPG'
fdst
None
fsrc
None
src
u'myfile.JPG'
हाय, मुझे लगता है कि "tmp/name.mp3" हार्डकोड किया गया है, यह क्रॉस प्लेटफ़ॉर्म पथ में एक समस्या होगी, मैं आपके कोड को सुधारने का प्रयास करता हूं
–मुझे यहां पसंद नहीं है ** data.read() ** –
@ ups.read() के साथ क्या गलत है ?? –