PlayFramework は APP を完全に実装します (8)
创建Tag标签
1.创建Model
@Entity
@Table(name = "blog_tag")public class Tag extends Model 実装 Comparable
public 文字列名。
PRivate Tag(String name) { this.name = name;
}
public String toString() { return name;
}
public int CompareTo(Tag otherTag) { return name.compareTo( otherTag.name);
}
public static Tag findOrCreateByName(String name) {
Tag tag = Tag.find("byName", name).first(); if(tag == null) {
tag = new Tag(name);
} return tag;
}}
2.Post类追加タグ属性
@ManyToMany(cascade = CascadeType.PERSIST)public設定(&L) ;タグ>タグ;パブリック投稿(ユーザー作成者、文字列タイトル、文字列コンテンツ) {
this.comments = new ArrayList
}
3.Post类追加方法
关联Post和Tag
public Post tagItWith(String name) {
tags.add(Tag.findOrCreateByName(name)) ; return this;
}
戻り关联指定タグのPost集合
public static List
を持つ p.content,p.postedAt ).bind("tags", tags).bind("size", tags.length).fetch();
}
4.写测试用例
@Testpublic void testTags() { // 新しいユーザーを作成して保存します
User bob = new User("bob@Gmail.com", "secret", "Bob").save ();
// 新しい投稿を作成します
Post bobPost = new Post(bob, "最初の投稿", "Hello world").save();
別の投稿BobPost = new Post(bob, "Hop", "Hello world") 。保存();
// さて
assertEquals(0, Post.findTaggedWith("Red").size());
// 今すぐタグ付けします
bobPost.tagItWith("Red").tagItWith("Blue").save();
anotherBobPost.tagItWith("Red").tagItWith("Green").save();
// Check
assertEquals(1, Post.findTaggedWith("Red", "Blue").size());
assertEquals(1, Post.findTaggedWith("Red", "Green").size());
assertEquals(0, Post.findTaggedWith("Red", "Green", "Blue").size());
assertEquals(0, Post.findTaggedWith("Green", "Blue").size()); }
测试タグ
5.继续修正タグ类、追加方法
public static List
6. 页面上にタグを追加します
/yabe/conf/initial-data.yml 追加配置データセット
タグ(再生):
名前: 再生
タグ(アーキテクチャ):
名前: アーキテクチャ
タグ(テスト):
名前: テスト
タグ(mvc) :
名前: MVC
Post(jeffPost): -
- アーキテクチャ
- mvc
content: >
A Play
7.display.htmlを修正tag显示出来
8.追加listTagged メソッド(アプリケーションコントローラー)
点击タグ付き、タグ付きのすべての投稿リストを表示します public static void listTagged(String tag) {
List
}
9.修改display.html,タグ显示
#{リスト項目:_post.tags, としてタグ付けしました:' tag'}
${tag}${tag_isLast ? '' : ', '}#{/list}
10.AddRoute
现在有两条Ro ute规则URL無法区別
GET /posts/{tag} Application.listTagged
{id}追加规则
GET / photos/{id} アプリケーション.show
11.追加投稿リスト页面、同タグ付き投稿
#{set title: ' + タグでタグ付けされた投稿 /}
*{********* タイトル ********* }*
#{if Posts.size()>1} ${tag}タグが付いた投稿は ${posts.size()} 件あります
#{/if}
#{elseif 投稿}
「${tag}」タグが付いた投稿は 1 件あります'
#{/elseif}
#{else}
「${tag}」タグが付いた投稿はありません
#{/else}
*{********* 投稿リスト *********}*
#{list items:posts, as:'post'}
#{display post:post, as:'teaser' /}
#{/list}
效果:
就是PlayFramework完整以上实现一APP(八)的内容,更多相关内容请关注PHP中文网(www.php.cn)!

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











京東モールAPPで実名認証を取得するにはどうすればよいですか?京東モールは多くの友人がよく利用するオンライン ショッピング プラットフォームですが、充実したサービスを享受し、より良いショッピング体験を得るために、買い物をする前に全員が実名認証を行うことが最善です。以下はJD.comの実名認証方法です。ネチズンの参考になれば幸いです。 1. JD.com をインストールして開き、個人アカウントにログインします。 2. 次に、ページの下部にある [マイ] をクリックして、個人センター ページに入ります。 3. 次に、ページ内の小さな [設定] アイコンをクリックします。右上隅をクリックして設定機能インターフェイスに移動します; 4. [アカウントとセキュリティ] を選択してアカウント設定ページに移動します; 5. 最後に、[実名認証] オプションをクリックして実名情報を入力します; 6. . インストール システムでは、実際の個人情報を入力し、実名認証を完了する必要があります。

Dashen apk を例に挙げます。アプリ復号化 Lua スクリプトの以前の分析を通じて、Dashen apk の Lua スクリプトを復号化できます。次に、そのリソース (設定ファイルや画像など) を復号化しましょう。より重要な設定ファイルを例に挙げると、復号化前: ファイル ヘッダーには署名値「fuckyou!」も含まれています。これを見て、これもxxteaで暗号化されているのではないかと考え、上記の方法でxxteaで復号化してから解凍したところ、やはり文字化けしており、途中でエラーが発生しました。私たちが今言ったことを否定しなければなりません。推測です。設定ファイルの復号化を段階的に続けます。ちょっと考えてみてください。ファイルのヘッダーは次のとおりです。ファイルを復号化したい場合は、必然的に処理が必要になります

Microsoft は今年初めに、Windows 11 のセキュリティ機能である SmartAppControl をリリースしました。当時、Microsoftはこれを「信頼できないアプリケーションや潜在的に危険なアプリケーションをブロックする」保護ツールだと説明していた。当時のこのツールのユニークな点は、Windows 11 デバイスで実行する必要があるかどうかを決定することでした。 SmartAppControl は最初は評価モードで実行され、アプリケーションが開くべきかどうかを決定するのはこのモードです。 Microsoft は、ユーザーが Windows セキュリティ アプリのアプリとブラウザーのコントロール セクションでスマート アプリ コントロールを有効にできることを明らかにしました。 Microsoft のみによると、SmartAppC

AppStore は、iOS 関連のアプリケーションのマーケットプレイスです。無料アプリと有料アプリもここで見つけることができます。アプリには、ゲーム アプリ、生産性向上アプリ、ユーティリティ アプリ、ソーシャル メディア アプリなど、さまざまなカテゴリのアプリが含まれます。 AppStore から iPhone 用の多くのアプリをダウンロードまたは購入したことがあるかもしれません。 App Store で購入したアプリの購入履歴を確認する方法を知りたいと思われるかもしれません。場合によっては、プライバシー上の理由から、購入履歴から特定の購入を非表示にしたい場合があります。この記事では、購入履歴を確認する方法と、必要に応じて購入履歴から購入内容を削除/非表示にする方法を説明します。パート1

Appleの製品とサービスは、常に世界中のユーザーに愛され続けています。香港 Apple ID を登録すると、ユーザーはさらに便利になり、特典が得られます。香港 Apple ID の登録手順と注意点を見てみましょう。香港 Apple ID の登録方法 Apple デバイスを使用する場合、多くのアプリケーションや機能では、Apple ID を使用してログインする必要があります。香港からアプリケーションをダウンロードしたり、香港 AppStore の優待コンテンツを楽しみたい場合は、香港の Apple ID を登録することが非常に必要です。この記事では香港のApple IDの登録手順と注意点を詳しく解説します。手順: 言語と地域を選択します。Apple デバイスで「設定」オプションを見つけて、次のように入力します。

チャイナユニコムアプリはみんなのニーズを簡単に満たします。ニーズを解決するためのさまざまな機能があります。さまざまなサービスを処理したい場合は、ここで簡単に行うことができます。必要がない場合は、ここで時間内に購読を解除できます。携帯電話を利用していると、データ容量が足りないと感じて追加でデータパックを購入したものの、翌月には必要ないのですぐに退会したいという方も多いのではないでしょうか。必要な友達が来て利用できるように、退会方法を提供しています。 China Unicom アプリで、右下隅にある「My」オプションを見つけてクリックします。 「My」インターフェースで「My Services」列をスライドし、「注文しました」オプションをクリックします。

請求書は買い物券として、私たちの日常生活や仕事に欠かせないものです。では、普段買い物に Duodian アプリを使用する場合、Duodian アプリで簡単に請求書を発行するにはどうすればよいでしょうか?以下では、この Web サイトの編集者が、マルチポイント アプリで請求書を開くための詳細なステップバイステップ ガイドを提供します。さらに詳しく知りたいユーザーは、必ずお見逃しなく。テキストに従って詳細を確認してください。 [請求書センター]の[マルチポイントスーパー/フリーショッピング]をクリックし、注文完了ページで請求書が必要な注文を選択し、[次へ]をクリックして[請求書情報]、[受取人情報]を入力し、[クリック]をクリックします。正しいことを確認して送信し、数分後に受信メールボックスに入り、メールを開き、電子請求書のダウンロードアドレスをクリックし、最後に電子請求書をダウンロードして印刷します。

最近、筆者は Facebook Android APP にディープリンクの脆弱性を発見しましたが、この脆弱性を利用すると、ユーザーの携帯電話にインストールされている Facebook Android APP がバックドア プログラム (Backdoor) に変換され、バックドアが実現される可能性があります。さらに、この脆弱性を利用して Facebook APP を再パッケージ化し、特定のターゲットの被害者にインストールして使用するために送信することもできます。この脆弱性の作成者による発見プロセスと、ペイロードを介して脆弱性を構築し、最終的に Facebook APP の実際の運用環境でセキュリティ リスクに変換する方法を見てみましょう。私が普段公開テストを行って脆弱性を発見する際には、まず対象となるシステムのアプリケーションの仕組みを注意深く理解します。前回のブログでは、Face を解析する方法を共有しました
