2011-08-23 4 views
3

이 스크립트를 실행하고 http://my_server/picture을 열면 대신 그림이 logo -string이됩니다. 내가 일반 HTML 파일로이 HTML 조각을 열 때Mojolicious :: Lite - 그림 삽입 질문

#!/usr/local/bin/perl 
use warnings; 
use 5.014; 
use Mojolicious::Lite; 

get '/picture' => sub { 
    shift->render(); 
}; 

app->start; 

__DATA__ 
@@ picture.html.ep 
<!DOCTYPE HTML> 
<html> 
<body> 
<p>Hello</p> 
<img src="/absolute/path/TEST.jpg" alt="logo" /> 
<p>World</p> 
</body> 
</html> 

나는 그림을 얻는다.

Mojolicious :: Lite로 그림을 삽입하는 올바른 방법은 무엇입니까?

답변

5

public 디렉토리는 정적 데이터를위한 것입니다. 그냥 옆 스크립트를 생성에 이미지를 넣어 기본 설정으로 개발 서버가 실행 중일 때, 당신은 URL에 액세스 할 수 있습니다.

http://localhost:3000/TEST.jpg 

그래서 귀하의 템플릿을 포함 할 수 있습니다

<img src="/TEST.jpg" /> 
0

또는를 당신은 사용할 수 있습니다 : Base64 encoded DATA files :

... 
__DATA__ 
@@ picture.html.ep 
<!DOCTYPE HTML> 
<html> 
<body> 
<p>Hello</p> 
<img src="/absolute/path/TEST.jpg" alt="logo" /> 
<p>World</p> 
</body> 
</html> 

@@ TEST.jpg (base64) 
/9j/4AAQSkZJRgABAQEAZABkAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB 
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEB 
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAD6APoDASIA 
...