こんにちは私は2つのドロップダウンコンボボックスを使用して店をリストしようとしています。国や都市を選択していない場合は、すべてのお店を一覧表示します。他の方法は、都市の国またはその両方によるリストです。ところで、コントローラを作成しなかったので、generate-allを使ってtehmを生成します。 ここは私の見解です。ここ g:グレーの2つのコンボボックスを使用して選択してください
<g:form action="index" method="POST">
<div class="fieldcontain">
<g:select name="ddlCountry" noSelection="[null:message(code:'default.select.label',default:'Seçiniz...')]"
from="['UK', 'NL', 'DE']"
value="${params.ddlCountry}"/>
<g:select name="ddlCity"
from="['AMSTERDAM', 'Erfurt', 'Manchester','London']"
value="${params.ddlCity}"/>
<input class="btn btn-danger" type="submit" value="Listele" />
<g:each in="${shopList}" status="i" var="shopInstance">
<tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
<td>
<g:link controller="shop" action="show" params="[id:shopInstance.id]">
${fieldValue(bean: shopInstance, field: "shopName")}
</g:link>
</td>
<td>${fieldValue(bean: shopInstance, field: "shopAdress1")}</td>
<td>${fieldValue(bean: shopInstance, field: "shopPostcode")}</td>
<td>${fieldValue(bean: shopInstance, field: "shopCity")}</td>
<td>${fieldValue(bean: shopInstance, field: "shopCountry")}</td>
<td>${fieldValue(bean: shopInstance, field: "shopDateEdited")}</td>
</tr>
</g:each>
</div>
</g:form>
と
は、それはすべてのお店ごとにリストされていますdef index(Integer max) {
params.max = Math.min(max ?: 10, 100)
if(params.ddlCountry || params.ddlCity) {
def shops = Shop.withCriteria {
if (params.ddlCountry) {
like('shopCountry', '%${params.ddlCountry}%')
}
if (params.ddlCity) {
like('shopCity', '%${params.ddlCity}%')
}
}
[shopList:shops]
}
else{
respond Shop.list(params), model:[shopCount: Shop.count()]
}
}
ショップコントローラインデックスです。私は、ページが爽やかですが、何も学ぶことがたくさんありますように
私は最後に私の問題を解決しました。私はここに書いているが、多分誰かを助けた。 noSelection = "['':メッセージ(コード: 'default.select.label'、デフォルト: 'Seçiniz...')]" nullを削除し、 'で置き換えます。コントローラのページで、最初にifとelseを削除します。コードはとてもうまく機能します。 –