mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-19 04:19:25 +00:00
feat: init impl video watch
This commit is contained in:
parent
c425b55c93
commit
0997ea4135
3 changed files with 36 additions and 22 deletions
|
|
@ -17,6 +17,7 @@ async def create_video_element(name: str, coursechapter_id: str, current_user:
|
|||
# generate element_id
|
||||
element_id = str(f"element_{uuid4()}")
|
||||
|
||||
video_format = video_file.filename.split(".")[-1]
|
||||
element_object = ElementInDB(
|
||||
element_id=element_id,
|
||||
coursechapter_id=coursechapter_id,
|
||||
|
|
@ -24,7 +25,7 @@ async def create_video_element(name: str, coursechapter_id: str, current_user:
|
|||
type="video",
|
||||
content={
|
||||
"video": {
|
||||
"filename": video_file.filename,
|
||||
"filename": "video."+video_format,
|
||||
"element_id": element_id,
|
||||
}
|
||||
},
|
||||
|
|
@ -45,6 +46,8 @@ async def create_video_element(name: str, coursechapter_id: str, current_user:
|
|||
# upload video
|
||||
if video_file:
|
||||
print("uploading video")
|
||||
# get videofile format
|
||||
|
||||
await upload_video(video_file, video_file.filename, element_id)
|
||||
|
||||
# todo : choose whether to update the chapter or not
|
||||
|
|
|
|||
|
|
@ -17,12 +17,12 @@ async def upload_thumbnail(thumbnail_file, name_in_disk):
|
|||
|
||||
async def upload_video(video_file, name_in_disk, element_id):
|
||||
contents = video_file.file.read()
|
||||
|
||||
video_format = video_file.filename.split(".")[-1]
|
||||
# create folder
|
||||
os.mkdir(f"content/uploads/video/{element_id}")
|
||||
|
||||
try:
|
||||
with open(f"content/uploads/video/{element_id}/{name_in_disk}", 'wb') as f:
|
||||
with open(f"content/uploads/video/{element_id}/video.{video_format}", 'wb') as f:
|
||||
f.write(contents)
|
||||
f.close()
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue