Sự khác nhau giữa git merge và git rebase là gì ?
Bạn xem ảnh dưới sẽ hiểu ngay nhé
Merge và Rebase đều nhằm một mục đích là cập nhật source code ở nhánh đích về nhánh nguồn (ví dụ git rebase/merge develop
đều là cập nhật source code của develop về nhánh hiện tại)
Tuy nhiên merge thì tạo thêm 1 commit mới vào nhánh hiện tại và không thay đổi lịch sử commit. Còn rebase (dịch theo nghĩa đen là tạo lại base) sẽ sửa lại lịch sử commit của nhánh hiện tại.
Hiểu được việc này bạn sẽ quyết định được sử dụng rebase hay merge tốt hơn trong từng trường hợp cụ thể nhé.
Chúc bạn thành công.
Mọi người cho em hỏi có cách nào send mai nhanh trong php
Bạn có thể dùng API của một số dịch vụ gửi mail nổi tiếng
Lỗi missing `secret_key_base` khi deploy rails 6 lên aws
Bạn đã tạo và set biến SECRET_KEY_BASE trên production (aws ec2?) chưa?
RAILS_ENV=production rake secret
để tạo ra secret key
Sau đó set
export SECRET_KEY_BASE=secret key
vào trong .bash_profile
hay .profile
gì đó?
Xuống dòng trong js
Nếu làm thủ công thì đơn giản là thêm thẻ xuống dòng <br>
vào những chỗ muốn có dòng mới.
Nhưng có vẻ là bạn đang muốn làm tự động? Với các kích thước màn hình khác nhau thì cứ đến chiều rộng thích hợp và kết thúc một từ có nghĩa thì xuống dòng? Vậy thì mình nghĩ đây là một bài toán khá khoai nhất là với tiếng Việt.
Nó liên quan đến lĩnh vực xử lý ngôn ngữ tự nhiên, cụ thể trong trường hợp này là Word segmentation
, giúp bạn phân tích một văn bản tiếng Việt thành các từ, cụm từ có nghĩa trong tiếng Việt. Sau khi làm được việc này bạn sẽ viết được xử lý như ý
Bạn tham khảo bài viết này trên Viblo để lấy từ khoá tìm kiếm thêm nhé
https://viblo.asia/p/ban-ve-xu-ly-ngon-ngu-tieng-viet-924lJYdYZPM
Chúc bạn thành công!
Hỏi về cách deploy ứng dụng ruby on rails
Câu hỏi của bạn quá chung chung, lại có những điểm khá chi tiết nên mình cũng không chắc phải trả lời thế nào cho phải Nên mình cũng sẽ trả lời chung chung
Deploy một web service nói chung lên môi trường production mà một phần việc tương đối phức tạp (thuộc về mảng infrastructure) mà không phải ngày một ngày hai mà lĩnh hội hết được. Giải thích nôm na là bạn cần cài cắm khá nhiều thứ lên một hoặc nhiều server, liên kết chúng với nhau để có thể thực hiện được nhiều tác vụ khác nhau như vận hành HTTP server (phổ biến thì có Nginx hay Apache), web server (với Rails thì có các lựa chọn như Unicorn, Puma, Passenger...), dababase (MySQL, Postgres...), các công cụ monitor (Monit, Munin)...
Thực ra trên máy tính của bạn (môi trường development) bạn cũng đã và đang làm những điều tương tự như là cài đặt database, khởi động database, khởi động web server (chạy rails s
) tuy nhiên là ở môi trường development với độ ổn định và chịu tải không cao, do nó chỉ phục vụ cho mục đích phát triển. Môi trường production yêu cầu phải có nhiều thành phần và cơ chế hơn để đảm bảo tính ổn định (khó bị down, có bị down thì phải có cơ chế auto restart) và chịu tải tốt (rails s của bạn ở máy nếu bạn access từ 10 tabs khác nhau trên trình duyệt thì sẽ thấy các request sẽ phải xếp hàng chờ nhau, trong khi môi trường production thì phải đảm bảo xử lý cho nhiều user request 1 lúc, mà cái nào cũng phải nhanh)
Bạn vẫn có thể thử vào server online của bạn, cài đặt rails, database, git, pull project về và chạy rails s -e production
và nó vẫn sẽ chạy (ngày xưa làm cái dịch vụ đặt sữa chua cho công ty bọn mình cũng làm vậy cho ... nhanh) nhưng nó sẽ bất ổn đúng như khi bạn chạy môi trường development trên máy bạn
Trả lời kỹ hơn cho những ý chi tiết của bạn
Không ai trỏ vào thư mục project trên server rồi gõ lệnh chạy sidekiq cả
Không ai cần rails s để chạy project (trên server)
Là bởi vì sau khi deploy xong thì web server(s) hay worker(s) phục vụ cho sidekiq sẽ được tự khởi động và theo dõi nhờ các commands được config từ trước.
Một ví dụ nhỏ bạn có thể tham khảo nhanh file này
Trong đó có command cd $APP_ROOT && bundle exec unicorn -c config/unicorn.rb -E $ENV -D
để khởi động unicorn đó. Tham khảo nhanh thôi nhé, đọc kỹ lại bị hoang mang
Nói chung mình nghĩ ai mới bắt đầu thì cũng có thắc mắc như bạn cả thôi. Mình ngày xưa cũng vậy
Mình không phải chuyên về infra nên mình chọn cách đọc guide làm theo cho chạy được đã rồi dần dần ngộ ra về cách vận hành của từng thành phần, kiến tha lâu cũng có ngày đầy tổ.
Keywords tìm kiếm thì cũng có nhiều lắm, cũng như cách deploy thì cũng có hàng chục hàng trăm cách khác nhau, có cách ăn sẵn chả phải làm gì, có cách thì phải làm rất nhiều bước phức tạp và pro. Ăn sẵn thì bạn có thể dùng HEROKU https://www.heroku.com/ vô cùng thân thiện với Rails, cho đến giờ mình vẫn dùng với các dự án cá nhân và các dự án nhỏ. Nếu bạn có kiến thức về Docker thì đó cũng là một cách ăn sẵn, mọi thứ để nằm đó chờ bạn sử dụng thôi.
https://viblo.asia/p/deploy-rails-app-on-heroku-qm6RWqAnGeJE
https://viblo.asia/p/dockerize-rails-app-using-docker-and-docker-compose-924lJW765PM
Phức tạp hơn thì bạn tham khảo các bài viết sau trên Viblo để lấy các từ khoá nhé
https://viblo.asia/p/deploy-ung-dung-rails-voi-capistrano-va-unicorn-1VgZvoJ7lAw
https://viblo.asia/p/deploy-rails-application-voi-nginx-va-passenger-Ljy5VXy9Zra
TL;DR Chúc bạn thành công!
Không hiện ảnh khi deploy project laravel lên heroku
https://help.heroku.com/K1PPS2WM/why-are-my-file-uploads-missing-deleted
Không biết có đúng vấn đề của bạn không nhưng nếu storage lưu file của bạn nằm trong server heroku đó luôn thì sẽ bị mất khi dyno bị tắt hoặc khởi động lại.
Giải pháp phố biến nhất là lưu file ngoài heroku (AWS S3 chẳng hạn) chỉ lưu url trong DB thôi.
làm sao để nó tự động chuyển slide mà không cần click
Nếu bạn đang hỏi về MS Powerpoint thì làm thế này nhé
Bỏ dấu check ở on Mouse Click đi, check xuống dưới và chọn khoảng thời sẽ sẽ tự động chuyển slide.
lấy 2 hoặc 3 ngày liên tiếp nhau trong msql
Với thiết kế DB đơn giản như bạn nói thì dùng 1 câu SQL để lấy ra list học sinh theo mình nghĩ là rất khó.
Chưa kể việc còn phải tính đến cuối tuần hay ngày nghỉ nữa.
Để giải quyết thì bạn có thể query lấy data sau đó xử lý thêm phía PHP, hoặc bạn thêm trường để đánh dấu những học sinh nghỉ 2,3 ngày liền vào DB, sau đó mỗi lần tạo record điểm danh thì update trường đó luôn. Làm việc thì lúc có nhu cầu sẽ lấy được ra list học sinh bằng 1 câu SQL luôn, không cần xử lý thêm gì
Chúc bạn thành công
Nên học rộng ra để biết nhiều thứ hay nên tập trung vào một thứ thật tốt ?
Theo mình là nên biết thật tốt nhiều thứ
Xây dựng database kiến thức cho mình để sau này search lại.
Hiểu thật kỹ nội dung bài viết, dịch hoặc viết lại theo ý mình trên Viblo và clip lại
Xữ lý load icon emoji ứng với ký tự tương ứng
Bạn có thể tạo một regex cho tất cả các keys, search và replace 1 lần thôi.
P.S. Tác giả Chat++ chắc đang gõ câu trả lời cho bạn =)) @thangtd90
hỏi ngu về crawling
Mình đoán là các biểu thức toán học trên các trang bạn crawl về được viết bằng các công cụ hỗ trợ kiểu như latex hay gì đó.
Ví dụ trên Viblo thì viết thế này $ 10 \over 2 $
nó sẽ ra:
$ 10\over2 $
Khi bạn chỉ crawl phần text thì nó sẽ ra nguyên như vậy nên phép chia nó mới thành over
. Giải pháp ở đây là bạn hãy crawl nguyên dạng html bao gồm các tag, sau đó add thêm các xử lý cho các tag đặc biệt để replace các biểu thức toán về dạng bạn mong muốn.
P.S. Với các biểu thức phức tạp mà có căn bậc n hay các phép sum, logarit chẳng hạn thì chắc chả có cách diễn đạt bằng text nào phù hợp
Xử lý email trên ứng dụng Rails
Theo mình hiểu thì email sẽ không được gửi từ hệ thống đúng không. Ví dụ một người X gửi mail vào email của bạn và bạn muốn hệ thống handle và nhận được email đó?
- Email của bạn là email của mail server bạn không có quyền kiểm soát kiểm soát (gmail, yahoo chẳng hạn). Trường hợp này thì bạn nghiên cứu gmail API hay các API mà họ cung cấp để cài đặt các webhook để khi có email đến sẽ có request tự động gửi đến controller trên Rails cho bạn.
- Email của bạn là email của mail server bạn có quyền kiểm soát thì tìm các set webhook đến Rails server để handle mỗi khi có mail đến là được.
P.S. Nếu mail là do chính ứng dụng của bạn gửi và bạn muốn mỗi khi mail đến nơi thì server rails sẽ thực hiện 1 số xử lý thì còn dễ hơn. Vì các dịch vụ gửi mail như Sendgrid hay Mandrill đều support webhook đến tận răng rồi
Replace trong javascript với regular expression :((
Bạn muốn làm kiểu thế này đúng không nhỉ?
> var test_string = `<p>Header content</p>
<p>Line 1: <img class='formula' src='http://icons.iconarchive.com/icons/paomedia/small-n-flat/256/cat-icon.png' align='middle' data-latex='\\frac{5}{6}' /></p>
<p>Middle content</p>
<p>Line 2: <img class='formula' src='http://icons.iconarchive.com/icons/paomedia/small-n-flat/256/cat-icon.png' align='middle' data-latex='\\sqrt[3]{5}' /></p>
<p>Final content</p>`
> test_string.replace(/<p>(.*)<img class='formula'(.*)data-latex='(.*)' \/><\/p>/g, "<p>$1<div class='formula'>$$$ $3 $$$</div></p>");
"<p>Header content</p>
<p>Line 1: <div class='formula'>$$ \frac{5}{6} $$</div></p>
<p>Middle content</p>
<p>Line 2: <div class='formula'>$$ \sqrt[3]{5} $$</div></p>
<p>Final content</p>"
Mình chưa dùng tinymce
bao giờ, nếu getContent
trả về nội dung không giống cái test_string
trên kia thì chắc cần xử lý qua một chút :-s
resolved https://viblo.asia/c/rLZDmzzAElk
Thời điểm đánh index khi sử dụng Elasticsearch
Mỗi lần create hay update user thì add hay update lại index trên index ES là được mà bạn
Giải Pháp Cứ 16 Giây Thì Phải Tạo Hoặc Update 80.000 rows.
@MinhDuc Với thông tin hiện tại mình có một ý kiến thế này
Bạn có thể thử dùng Redis để lưu 5000 kết quả trung gian. Redis đọc ghi rất nhanh, ưu việt hơn hẳn so với SQL nên có thể sẽ giải quyết tốt bài toán đọc ghi liên tục của bạn.
Sau khi hoàn thành job to bạn có thể ghi 1 lần các kết quả trung gian vào DB chính, hoặc nếu không cần thiết thì delete dữ liệu ở Redis đi là xong.
Xử lý lưu dữ liệu trong Hash
Bạn truyền cả object parent
vào nên khi gán nó gán lại giá trị cho object parent
luôn.
Dùng clone để tạo object cùng giá trị là một giải pháp bạn nhé.
2.3.1 :002 > town = {f1: parent.clone, f2: parent.clone}
=> {:f1=>{:son1=>"", :son2=>""}, :f2=>{:son1=>"", :son2=>""}}
2.3.1 :003 > town[:f1][:son1] = "David"
=> "David"
2.3.1 :004 > town
=> {:f1=>{:son1=>"David", :son2=>""}, :f2=>{:son1=>"", :son2=>""}}
V/v xây dựng chức năng nhóm bài viết cho một bài viết.
Khoá ngoài null thì có vấn đề gì hả bạn?
Upload file khi website run trên 2 server
Bạn nên store file lên một File storage service nào đó nhé. AWS S3 là một lựa chọn tốt
Nếu không có điều kiện sử dụng thì khi cần access vào ảnh thì cố định chỉ định vào server chứa ảnh thôi.
Các kĩ năng
Tổ chức
Chưa có tổ chức nào.