THẢO LUẬN

Hay quá. Cảm ơn bạn nhiều nhé. Mình đã làm theo và thành công rồi ❤️

+1

@maitrungduc1410 Dạ vâng, mình sẽ chạy composer update ở đâu vậy anh nhỉ, xin lỗi anh do em cũng mới học tập về mảng này nên cũng chưa rành lắm ạ, có gì nhờ anh chỉ chi tiết dùm em 1 tí, em cảm ơn

0
thg 2 3, 2023 4:39 SA

Haha cũng đúng, những project như vậy quy trình tuyển dụng gắt nên gà mờ thì khó mà vô được, mà vô nhưng toxic, không chịu theo process thì cũng out sớm.

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 2 3, 2023 4:29 SA

@KyThinh Chuẩn đó bạn. Giống như Viblo, mỗi bài viết sau khi publish đều được thêm URL vào trong sitemap: image.png

+1
thg 2 3, 2023 4:06 SA

@tinhtn89 cho mình xem chỗ view child_category bạn viết như thế nào được không ạ

0
thg 2 3, 2023 3:26 SA

Cảm ơn anh về bài viết này! Chúc anh năm mới thuận lợi và đạt được thành công mới! 😄

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 2 3, 2023 3:09 SA

@sven_9x editor.uploadImages() hoặc có thể sử dụng option automatic_uploads đều sẽ gọi tới server backend(của bạn tự code) và upload file. Nếu ko có path remote của file trả về từ response sau upload thì sẽ convert ảnh thành base64 và lưu dạng base64 luôn.

Note: Execute the editor.uploadImages() function before submitting the editor contents to the server to avoid storing the images as Base64. Use a success callback to execute code once all the images are uploaded. This success callback can save the editor’s content to the server through a POST. Đoạn này ý nghĩa là hãy handle cái hàm trên trước khi gửi editor contents xuống server để lưu trữ.

Đầu tiên phần config tinymce(Theo hướng sử dụng automatic_uploads option để tự động upload image lúc chọn xong, bạn có thể chọn sử dụng editor.uploadImages() như trên thì bỏ option automatic_uploads đi và gọi editor.uploadImages() để gửi cả 1 loạt ảnh xuống server rồi mới gửi request lưu data):

this.tinymceOptions = {
      image_title: true,
      // enable automatic uploads of images represented by blob or data URIs
      automatic_uploads: true,
      // URL of our upload handler (for more details check: https://www.tinymce.com/docs/configure/file-image-upload/#images_upload_url)
      // here we add custom filepicker only to Image dialog
     file_picker_types: 'image',
     images_upload_url: '<ipserver:port/upload', #Chỗ này là path tới API Post
     file_picker_callback: function (callback, value, meta) { # Chỗ này ghi đè lại behavior default của file picker
        if (meta.filetype == 'image') {
          $('#upload').trigger('click');
          $('#upload').on('change', function () {
            var file = this.files[ 0 ];
            var reader = new FileReader();
            reader.onload = function (e) {
              callback(e.target.result, {
                alt: ''
              });
            };
            reader.readAsDataURL(file);
          });
        }
      }
}

Phần HTML

<textarea ui-tinymce="X.tinymceOptions" ng-model="X.lessonBody"></textarea>
<input name="image" type="file" id="upload" style="display:none;" onchange="">

Dưới server thì handle POST request tại path /upload rồi thực hiện logic upload file Nên sử dụng 1 function normalize filename và add thêm uniqueID tự generate ngẫu nhiên để tránh trùng tên Ví dụ: "Đây là tên file.txt" => "day_la_ten_file_fkuujs909032.txt" Rồi trả về response dạng { 'location': 'ipserver:port/path_to_folder/day_la_ten_file_fkuujs909032.txt' }' Phần backend nhớ lưu ý phần CORS.

Bạn có thể xem thêm tại đây: https://www.tiny.cloud/docs/general-configuration-guide/upload-images/#images_upload_url

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 2 3, 2023 2:37 SA

Cảm ơn anh nhiều ah. Theo em hiểu flow là: thêm 1 blog -> Thêm vào file sitemap.xml

+1
thg 2 3, 2023 2:30 SA

@hoangphikiemkhach cảm ơn bạn

0
thg 2 2, 2023 11:48 CH

bro liên hệ ngân hàng cho chắc nhé! Còn mình dùng của Sacombank.

0
thg 2 2, 2023 4:23 CH

Bác ơi cho mình hỏi chút bác thanh toán Kodecloud bằng thẻ visa ngân hàng nào vậy, mình dùng TPbank mà nó không cho thanh toán

0
thg 2 2, 2023 3:05 CH

OMG, mấy phần sau hấp dẫn với thực chiến hơn nhiều so với mấy cháp đầu. thanks anh

0
thg 2 2, 2023 12:46 CH

Hóng phần tiếp theo của bạn

0

Cảm ơn bạn về bài viết! 😄 Chúc bạn có năm mới thành công mới nhé!

Mình hiện tại đang là 1 Dev và cũng đang có định hướng rẽ hướng sang BA. Hy vọng có thể kết nối và trao đổi thêm nhiều điều với bạn! ^ ^

+1

cái này là do package php vendor chắc là outdate rồi e ạ, cái này e pahir chạy composer update đó

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 2 2, 2023 10:42 SA

@quangnv1311 mình đọc phần đó r nhưng đang chưa hiểu đoạn xử lý upload bên tinymce

0

@dang123 Có một vài cách cách:

  • Bạn có thể set tham số trực tiếp trong câu lệnh kubectl tham khảo: kubectl set image deployment/my-deployment mycontainer=myimage:latest
  • Bạn bổ sung thêm một step để update file deployment.yaml của bạn sau đó kubectl apply (dùng script là một ý tưởng)
0
thg 2 2, 2023 9:56 SA

@AAAAA Cám ơn anh về bình luận siêu chi tiết này ạ! ^ ^

0
thg 2 2, 2023 9:50 SA

tks

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí