2012-04-14 1 views
0
<portlet:actionURL name="addBook" var="addBookURL" /> 
<aui:form action="<%= addBookURL.toString() %>" method="post"> 

UI에서는 사용자가 추가 같은 다른 작업을 할 수 있습니다을 Liferay 6 : 모든 방법 내가 별도의 actionURL

public void addBook(ActionRequest request, ActionResponse response) { 

} 

public void deleteBook(ActionRequest request, ActionResponse response) { 

} 

내가 MVC 포틀릿 클래스 내부에 이러한 두 가지 방법이에게 필요 있나요 , 도서 삭제

이제 addBook 메소드로 잘 작동합니다. 별도의 포틀릿을 작성해야합니까 : actionURL 및 deleteBook Action에 대한 UI의 auiform?

저는 Liferay를 처음 사용 했으므로 바보 같은 질문에 대해 사과하십시오.

그렇다면 어떻게 한 페이지에 두 개의 양식이있을 수 있습니까 ??

답변

2

당신이 액션 이름이 당신이 많은 방법이 필요합니다 :

<portlet:actionURL name="addBook" var="addBookURL" /> 
<aui:form action="<%= addBookURL.toString() %>" method="post"> ... </aui:form> 

<portlet:actionURL name="deleteBook" var="deleteBookURL" /> 
<aui:form action="<%= deleteBookURL.toString() %>" method="post"> ... </aui:form> 

fyi: see what your actionURLs look like: <br/> 
<%=addBookURL.toString()%><br/> 
<%=deleteBookURL.toString()%><br/> 

적은 방법을 가지고 있지만, 여전히 액션 이름을 가지고 싶다면, 당신은 또한의 processAction (ActionRequest를 요청을 무시할 수, ActionResponse의 응답을) 그리고 조건 (액션 이름)을 직접 처리하십시오. 하나의 양식에서 여러 작업을 수행하는 경우 하나의 작업으로 처리하고 어떤 콘텐츠를 가져올 지 결정할 수 있습니다 (예 : 어느 버튼이 눌러 졌는지. 또는 Javascript를 사용하여 제출시 양식 작업 URL을 설정하십시오.

관련 문제