@bienhoang Theo như mình hiểu thì từ Rails 4 trở lên có setting việc đọc file trong thư mục public trước khi duyệt qua route. Với trường hợp của bạn thì mình có 2 phương án để xử lý:
Đơn giản nhất là chuyển file public/index.html qua 1 controller static_page hoặc đại loại thế và viết routes cho file này.
Hoặc bạn có thể loại bỏ thư mục public ra khỏi khai báo routes của Rails 5 và khai báo nó qua nginx hoặc apache.
Setting trong file config:
config.public_file_server.enabled = false
Setting trong nginx
location <PATTERN> {
# dùng try_files hoặc root ở đây để trỏ đến public/index.html
}
@bienhoang Cơ chế của Rails trong trường hợp đó bao giờ cũng tìm index.html trong public trước.
giờ muốn sửa thì chỉ có đọc code rails xong overwrite đoạn đó thôi
Còn nếu chỉ là muốn access được vào domain.com/index.html mà không nhất thiết index.html phải đặt trong public thì có cách
@thangtd90 thực ra thì hiện tại khi request domain.com/ nó sẽ ra nôi dung file index.html, em muốn là khi vào domain.com/ thì request sẽ do rails xử lý như bác nói. ngặt cái có vẻ như rails nó vẫn chạy file index.html. Nếu xoá đi nó sẽ vào router như thường.
@bs90 haha. lý do này bản thân mình cũng không biết đâu. chỉ đơn giản là yêu cầu nó thế. và mình phải đi tìm giải pháp. có thể khả thi có thể không, mình thì dã thử nhiều cách và thấy không khả thi lắm, nên muốn hỏi thêm mọi người xem.
Bắn notification là 1 cách để có thể lắng nghe khi location thay đổi.
Bình thường LocationManager 1 khi đã start thì nó sẽ chạy cho đến khi bạn stop nó. vì nó được đóng gói trong singleton.
Vì thế cho nên trong bất kỳ ViewController nào bạn muốn biết location thay đổi hay ko thì hãy listen notification đó, mà ko cần khởi tạo CLLocationManager mới.
Mình quên mất biến currentLocation để lấy location khi cần thiết LocationManager.shared.currentLocation
Làm sao để hiện được notification trong khi không mở browser lên vậy bạn.? Có thể cho mình keyword hoặc solution cho problem này được không? Tks b nhiều
Ừa mình biết cái đó r mà. Nhưng axios thì không thấy có cái này. Mình thấy việc có then() sẽ giúp bạn dễ kiểm soát được flow hơn là config async cho request. Bởi config như thế mình nghĩ sẽ làm mất tính chất hay của ajax trừ khi bạn thực sự không còn cách nào khác và buộc p làm thế :-?
À, hehe. Theo mình tìm hiểu thì nó không có bạn ạ. Nếu bạn muốn thực hiện synchronous thì bạn có thể thực hiện ở ngay then(). hoặc sử dụng async/await (cách này không nên lắm vì đã có then() )
THẢO LUẬN
@bienhoang Theo như mình hiểu thì từ Rails 4 trở lên có setting việc đọc file trong thư mục public trước khi duyệt qua route. Với trường hợp của bạn thì mình có 2 phương án để xử lý:
Link tham khảo https://github.com/rails/rails/blob/5ed8aa9e02014d7840e746f407068315d6fc6b63/guides/source/rails_on_rack.md
$$able->bigIncrements('id');?? lỗi rồi kìa?@bienhoang Bạn deploy production chưa? Có khi đùng nginx dẫn root path về root path của mình được
@bs90 vâng. khó lắm bác ạ.
@bienhoang Cơ chế của Rails trong trường hợp đó bao giờ cũng tìm index.html trong public trước. giờ muốn sửa thì chỉ có đọc code rails xong overwrite đoạn đó thôi
Còn nếu chỉ là muốn access được vào domain.com/index.html mà không nhất thiết index.html phải đặt trong public thì có cách
@thangtd90 thực ra thì hiện tại khi request domain.com/ nó sẽ ra nôi dung file index.html, em muốn là khi vào domain.com/ thì request sẽ do rails xử lý như bác nói. ngặt cái có vẻ như rails nó vẫn chạy file index.html. Nếu xoá đi nó sẽ vào router như thường.
@bs90 haha. lý do này bản thân mình cũng không biết đâu. chỉ đơn giản là yêu cầu nó thế. và mình phải đi tìm giải pháp. có thể khả thi có thể không, mình thì dã thử nhiều cách và thấy không khả thi lắm, nên muốn hỏi thêm mọi người xem.
cái này tức là khi request đến
domain.com/index.htmlthì nó sẽ không ra nội dung fileindex.html, mà request sẽ do rails xử lý đúng không bạnBắn notification là 1 cách để có thể lắng nghe khi location thay đổi.
Bình thường LocationManager 1 khi đã start thì nó sẽ chạy cho đến khi bạn stop nó. vì nó được đóng gói trong singleton.
Vì thế cho nên trong bất kỳ ViewController nào bạn muốn biết location thay đổi hay ko thì hãy listen notification đó, mà ko cần khởi tạo CLLocationManager mới.
Mình quên mất biến currentLocation để lấy location khi cần thiết LocationManager.shared.currentLocation
var currentLocation: CLLocation?
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
Lý do đặc biệt là gì hả bạn? Biết đâu giải quyết lý do đó bằng giải pháp khác sẽ dễ dàng hơn thì sao
Mình sẽ lưu ý cho bài viết sau nhé. Cảm ơn bạn.
)
@apkmonth
Ví dụ như bạn muốn down 10 cái ảnh với từ khóa ''Dog" thì bạn có thể dùng đoạn code này
Thông tin thêm về các
argumentsbạn có thể check ở đâyhttps://github.com/hardikvasa/google-images-download#arguments
Làm sao để hiện được notification trong khi không mở browser lên vậy bạn.? Có thể cho mình keyword hoặc solution cho problem này được không? Tks b nhiều
Cảm ơn bạn nhé, m xem rồi nhưng vẫn chưa sử lý được, bạn có thể giúp mình tí được không
Ừa mình biết cái đó r mà. Nhưng axios thì không thấy có cái này. Mình thấy việc có then() sẽ giúp bạn dễ kiểm soát được flow hơn là config async cho request. Bởi config như thế mình nghĩ sẽ làm mất tính chất hay của ajax trừ khi bạn thực sự không còn cách nào khác và buộc p làm thế :-?
"Phát triển chức năng → Test → Release sản phẩm cho khách hàng" sản phẩm ở đây kiểu như là 1 chức năng thôi nhỉ bạn?
Ở jQuery thì chỉ cần async: false là được bạn ạ
À, hehe. Theo mình tìm hiểu thì nó không có bạn ạ. Nếu bạn muốn thực hiện synchronous thì bạn có thể thực hiện ở ngay then(). hoặc sử dụng async/await (cách này không nên lắm vì đã có then() )
Hi, ý mình là phần chỉnh bật tắt việc bất đồng bộ ở đâu bạn ơi? jQuery thì có nhưng thằng này mình không thấy có.
Có thể mình chưa hiểu ý câu hỏi của bạn lắm. Nhưng Axios dùng promises nên đã bất đồng bộ r mà bạn :-ss