タグ付けされた質問 「model」

MVCパターンの一部であるモデルは、アプリケーションの動作とデータを管理します。


5
MVCでモデルをどのように構成する必要がありますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前休業。 私はMVCフレームワークを把握しているだけで、モデルにどのくらいのコードを含める必要があるのか​​よく疑問に思います。私はこのようなメソッドを持つデータアクセスクラスを持っている傾向があります。 public function CheckUsername($connection, $username) { try { $data = array(); $data['Username'] = $username; //// SQL $sql = "SELECT Username FROM" . $this->usersTableName . " WHERE Username = :Username"; //// Execute statement return $this->ExecuteObject($connection, $sql, $data); } catch(Exception $e) { throw $e; } } 私のモデルは、データベーステーブルにマップされるエンティティクラスになる傾向があります。 モデルオブジェクトには、データベースにマップされたすべてのプロパティと上記のコードを含める必要がありますか、それとも実際にデータベースが機能するコードを分離しても問題ありませんか? 最終的に4つのレイヤーができますか?

8
Automapperで1つのプロパティのマッピングを無視する
Automapperを使用していて、次のシナリオがあります。クラスOrderModelに、データベースにない 'ProductName'というプロパティがあります。だから私がマッピングをしようとすると: Mapper.CreateMap<OrderModel, Orders>(); それは例外を生成します: 「Project.ViewModels.OrderModelの次の1つのプロパティはマップされていません: 'ProductName' AutoMapperのWiki for Projectionsで逆のケースを読んだことがあります(追加の属性は宛先にあり、実際には私の場合のソースにはありません)。 オートマッパーがこのプロパティのマッピングを作成しないようにするにはどうすればよいですか?

14
Doctrine2:参照テーブルに列を追加して多対多を処理する最良の方法
Doctrine2で多対多のリレーションを処理するための最良で最もクリーンで最も簡単な方法は何だろうと思います。 メタリカのMaster of Puppetsのようないくつかのトラックのアルバムがあるとします。ただし、MetallicaのBatteryのように、1つのトラックが複数のアルバムに表示される場合があることに注意してください。このトラックは3つのアルバムで使用されています。 したがって、必要なのは、いくつかの追加の列(指定されたアルバム内のトラックの位置など)を含む3番目のテーブルを使用して、アルバムとトラックの多対多の関係です。実際、Doctrineのドキュメントが示唆しているように、私はその機能を実現するために二重の1対多の関係を使用する必要があります。 /** @Entity() */ class Album { /** @Id @Column(type="integer") */ protected $id; /** @Column() */ protected $title; /** @OneToMany(targetEntity="AlbumTrackReference", mappedBy="album") */ protected $tracklist; public function __construct() { $this->tracklist = new \Doctrine\Common\Collections\ArrayCollection(); } public function getTitle() { return $this->title; } public function getTracklist() { return $this->tracklist->toArray(); …

5
Rails find_or_create_by複数の属性?
find_or_create_byというアクティブレコードには、便利な動的属性があります。 Model.find_or_create_by_<attribute>(:<attribute> => "") しかし、複数の属性でfind_or_createを実行する必要がある場合はどうなりますか? GroupとMemberの間のGroupMemberと呼ばれるM:M関係を処理するモデルがあるとします。member_id = 4のインスタンスを多数持つことができますが、member_id = 4とgroup_id = 7のインスタンスを2回以上使いたくありません。 GroupMember.find_or_create(:member_id => 4, :group_id => 7) これを処理するより良い方法があるかもしれないと思いますが、find_or_createのアイデアの便利さを気に入っています。


7
AngularJS-ラジオボタンをブール値のモデルにバインドする
プロパティにブール値があるオブジェクトにラジオボタンをバインドするときに問題が発生します。$ resourceから取得した試験問題を表示しようとしています。 HTML: <label data-ng-repeat="choice in question.choices"> <input type="radio" name="response" data-ng-model="choice.isUserAnswer" value="true" /> {{choice.text}} </label> JS: $scope.question = { questionText: "This is a test question.", choices: [{ id: 1, text: "Choice 1", isUserAnswer: false }, { id: 2, text: "Choice 2", isUserAnswer: true }, { id: 3, text: "Choice 3", …

4
Rails:dependent =>:destroy VS:dependent =>:delete_all
レールガイドでは次のように説明されています: オブジェクトは、に関連付けられている場合はさらに破棄:dependent => :destroyされ、に関連付けられている場合は削除されます:dependent => :delete_all そうですね。しかし、破壊されることと削除されることの違いは何ですか?私は両方を試しました、そしてそれは同じことをするようです。

7
Rails after_saveコールバックで変更された属性を特定しますか?
モデルの公開済み属性がfalseからtrueに変更された場合にのみ通知を送信するように、モデルオブザーバーでafter_saveコールバックを設定しています。などの方法が変わったので?モデルが保存される前にのみ有用ですが、私が現在(そして失敗して)それを試みている方法は次のとおりです: def before_save(blog) @og_published = blog.published? end def after_save(blog) if @og_published == false and blog.published? == true Notification.send(...) end end これを処理するための最良の方法については、誰かが提案します(できれば、モデルオブザーバーのコールバックを使用して(コントローラーコードを汚染しないようにするため))。

6
JavaScriptからMVCのモデルプロパティにアクセスする
私のビューモデルにラップされている次のモデルがあります public class FloorPlanSettingsModel { public int Id { get; set; } public int? MainFloorPlanId { get; set; } public string ImageDirectory { get; set; } public string ThumbnailDirectory { get; set; } public string IconsDirectory { get; set; } } JavaScriptから上記のプロパティの1つにアクセスするにはどうすればよいですか? 私はこれを試しましたが、「未定義」になりました var floorplanSettings = "@Model.FloorPlanSettings"; alert(floorplanSettings.IconsDirectory);

8
ASP.NET MVCはい/いいえ強くバインドされたモデルMVCのラジオボタン
はい/いいえラジオボタンをASP.NET MVCの厳密に型指定されたモデルのブールプロパティにバインドする方法を知っている人はいますか? 型番 public class MyClass { public bool Blah { get; set; } } 見る <%@ Page Title="blah" Inherits="MyClass"%> <dd> <%= Html.RadioButton("blah", Model.blah) %> Yes <%= Html.RadioButton("blah", Model.blah) %> No </dd> ありがとう 解決: ブライアンの指示に感謝しますが、それは彼が書いたものとは逆でした。そのように- <%@ Page Title="blah" Inherits="MyClass"%> <dd> <%= Html.RadioButton("blah", !Model.blah) %> Yes <%= Html.RadioButton("blah", Model.blah) %> No …


3
angular.js ng-modelにjsonをロードする方法は?
おそらく非常に明白な質問だと思いますが、どこにも答えが見つかりませんでした。 サーバーからクライアントにJSONデータをロードしようとしています。現在、私はJQueryを使用して、AJAX呼び出しでそれをロードしています(以下のコード)。 <script type="text/javascript"> var global = new Array(); $.ajax({ url: "/json", success: function(reports){ global = reports; return global; } }); </script> これはhtmlファイルにあります。これまでのところ機能しますが、問題はAngularJSを使用したいことです。今、Angularは変数を使用できますが、すべてを変数にロードできないため、for eachループを使用できます。これは通常、.jsファイルにある「$ Scope」に関連しているようです。 問題は、他のページから.jsファイルにコードをロードできないことです。Angularのすべての例は、次のようなものだけを示しています: function TodoCtrl($scope) { $scope.todos = [ {text:'learn angular', done:true}, {text:'build an angular app', done:false}]; したがって、これは便利です。IA)これをすべて手で入力したい場合、かつB)私のデータがすべて事前にわかっている場合... 事前に分からない(データは動的)ので、入力したくありません。 そのため、$ Resourceを使用してAJAX呼び出しをAngularに変更しようとしても、機能しないようです。理解できないかもしれませんが、JSONデータに対する比較的単純なGETリクエストです。 tl:dr外部データを角度モデルにロードするためにAJAX呼び出しを機能させることができません。

26
Mongooseをコンパイルするとモデルを上書きできません
私が何を間違っているのかわからない、ここに私のcheck.jsがあります var db = mongoose.createConnection('localhost', 'event-db'); db.on('error', console.error.bind(console, 'connection error:')); var a1= db.once('open',function(){ var user = mongoose.model('users',{ name:String, email:String, password:String, phone:Number, _enabled:Boolean }); user.find({},{},function (err, users) { mongoose.connection.close(); console.log("Username supplied"+username); //doSomethingHere }) }); そしてこれが私のinsert.jsです var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/event-db') var user = mongoose.model('users',{ name:String, email:String, password: String, phone:Number, _enabled:Boolean }); …

6
モデルでヘルパーを使用する:ヘルパーの依存関係を含めるにはどうすればよいですか?
テキスト領域からのユーザー入力を処理するモデルを書いています。http://blog.caboo.se/articles/2008/8/25/sanitize-your-users-html-inputからのアドバイスに従って、before_validateを使用して、データベースに保存する前にモデルの入力をクリーンアップしています折り返し電話。 モデルの関連部分は次のようになります。 include ActionView::Helpers::SanitizeHelper class Post < ActiveRecord::Base { before_validation :clean_input ... protected def clean_input self.input = sanitize(self.input, :tags => %w(b i u)) end end 言うまでもなく、これは機能しません。新しい投稿を保存しようとすると、次のエラーが表示されます。 undefined method `white_list_sanitizer' for #<Class:0xdeadbeef> どうやら、SanitizeHelperはHTML :: WhiteListSanitizerのインスタンスを作成しますが、モデルに混ぜると、HTML :: WhiteListSanitizerが見つかりません。どうして?これを修正するにはどうすればよいですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.