Lỗi khi trả về view, trả về html nhưng ko có css

Em có tạo 2 đường dẫn trả về như dưới


Cái /home thì ko sao nhưng /home/{img} bên dưới thì khi nó trả về view html thì lại ko có css, nó cũng ko báo lỗi j cả.
Sau đó em đổi đường dẫn cái thứ 2 về /{img} thì lại ko sao. Ai biết tại sao không ạ? e xin cám ơn

kho3

bạn F12 lên check xem đường dẫn CSS có đúng không, hay là đang để dạng đường dẫn tương đối á?

2 Likes

Cái này là đường dẫn tướng đối đúng ko ạ


Nhưng khi vào /shop nó vẫn trả về css như trên và ko bị lỗi mà khi vào /shop/{…} lại bị lỗi css, còn đối tượng vẫn truyền dc sang

Bạn dùng template engine là gì? Thymeleaf hả?
Nếu thymeleaf thì bạn dùng các url cho static file dưới dạng này nha:

Và để các static file trong đường dẫn như này. Sau /static thì folder name bạn để sao cũng được.
image

2 Likes

em nghĩ ko phải lỗi đường dẫn do html đâu, bởi vì spring boot nó tự động cấu hình đường dẫn đến src/main/resources rồi nên khi e thay như trên vào lại bị lỗi toàn bộ luôn(tức là /shop cũng lỗi luôn).Còn ko có src/main/resources nếu lỗi do html thì đường dẫn /shop của e nó cũng phải lỗi theo chứ, cùng trả về 1 view mà cái dc cái ko, chắc nó liên quan tới đường dẫn e cấu hình trong controller

như thế kia là đường dẫn tương đối rồi, mấy đường dẫn đó bạn thêm / vào đầu nhé.
để như thế khi vào /shop/{xxx} thì nó sẽ hiểu là đang tìm mấy file assets ở trong /shop/, bạn nhìn URL ở mấy cái log báo 404 thì thấy đó.
tìm hiểu thêm về đường dẫn tương đối và tuyệt đối nhé.

5 Likes

Đúng rồi ạ, cảm ơn a, chị nhiều. Tại e hiểu sai về đường dẫn tương đối và tuyệt đối á.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?