คำถามติดแท็ก model

ส่วนหนึ่งของรูปแบบ MVC โมเดลจะจัดการพฤติกรรมและข้อมูลของแอปพลิเคชัน


5
โมเดลควรมีโครงสร้างอย่างไรใน MVC [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันเพิ่งเข้าใจเกี่ยวกับกรอบ MVC และฉันมักจะสงสัยว่าควรมีโค้ดจำนวนเท่าใดในโมเดล ฉันมักจะมี data access class ที่มีวิธีดังนี้: 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); …

8
ละเว้นการทำแผนที่หนึ่งคุณสมบัติด้วย Automapper
ฉันใช้ Automapper และฉันมีสถานการณ์ต่อไปนี้: Class OrderModel มีคุณสมบัติชื่อ 'ProductName' ที่ไม่ได้อยู่ในฐานข้อมูล ดังนั้นเมื่อฉันพยายามทำแผนที่ด้วย: Mapper.CreateMap<OrderModel, Orders>(); มันสร้างข้อยกเว้น: "คุณสมบัติ 1 รายการต่อไปนี้บน Project.ViewModels.OrderModel ไม่ได้ถูกแมป: 'ProductName' ฉันได้อ่านที่วิกิพีเดียของ AutoMapper's for Projectionsในกรณีตรงกันข้าม (แอตทริบิวต์พิเศษอยู่ที่ปลายทางไม่ใช่ในแหล่งที่มาซึ่งเป็นกรณีของฉันจริง ๆ ) ฉันจะหลีกเลี่ยง automapper เพื่อทำการแมปคุณสมบัตินี้ได้อย่างไร

14
Doctrine2: วิธีที่ดีที่สุดในการจัดการแบบตัวต่อตัวกับคอลัมน์พิเศษในตารางอ้างอิง
ฉันสงสัยว่าอะไรดีที่สุดสะอาดและเป็นวิธีที่ง่ายที่สุดในการทำงานกับความสัมพันธ์แบบหลายต่อหลายคนใน Doctrine2 สมมติว่าเรามีอัลบั้มอย่างMaster of Puppetsโดย Metallica ที่มีหลายแทร็ก แต่โปรดทราบความจริงที่ว่าหนึ่งแทร็กอาจปรากฏในมากกว่าหนึ่งอัลบั้มเช่นBattery by Metallicaทำ - อัลบั้มที่สามมีเนื้อเรื่องนี้ ดังนั้นสิ่งที่ฉันต้องการคือความสัมพันธ์แบบหลายต่อหลายกลุ่มระหว่างอัลบั้มและแทร็กโดยใช้ตารางที่สามกับคอลัมน์เพิ่มเติมบางอย่าง (เช่นตำแหน่งของแทร็กในอัลบั้มที่ระบุ) ที่จริงฉันต้องใช้ตามเอกสารของ Doctrine แนะนำความสัมพันธ์แบบหนึ่งต่อหลายสองครั้งเพื่อให้บรรลุการทำงานนั้น /** @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 …

5
Rails find_or_create_by มากกว่าหนึ่งคุณลักษณะ?
มีแอตทริบิวต์แบบไดนามิกที่มีประโยชน์ในบันทึกที่ใช้งานที่เรียกว่า find_or_create_by: Model.find_or_create_by_<attribute>(:<attribute> => "") แต่ถ้าฉันต้องการ find_or_create ด้วยแอตทริบิวต์มากกว่าหนึ่งรายการล่ะ ว่าฉันมีรูปแบบการจัดการความสัมพันธ์ M: M ระหว่างกลุ่มและสมาชิกที่เรียกว่า GroupMember ฉันสามารถมีหลายกรณีที่ member_id = 4 แต่ฉันไม่ต้องการมากกว่าหนึ่งครั้งที่ member_id = 4 และ group_id = 7 ฉันกำลังพยายามหาว่าเป็นไปได้ไหมที่จะทำสิ่งนี้: GroupMember.find_or_create(:member_id => 4, :group_id => 7) ฉันรู้ว่าอาจมีวิธีที่ดีกว่าในการจัดการกับสิ่งนี้ แต่ฉันชอบความสะดวกสบายของแนวคิดของ find_or_create

28
มีวิธีรับโมเดลทั้งหมดในแอพ Rails ของคุณหรือไม่?
มีวิธีที่คุณจะได้รับชุดโมเดลทั้งหมดในแอพ Rails ของคุณหรือไม่? โดยทั่วไปฉันสามารถทำสิ่งที่ชอบของ: - Models.each do |model| puts model.class.name end

7
AngularJS - ผูกปุ่มเรดิโอกับรุ่นที่มีค่าบูลีน
ฉันมีปัญหาผูกปุ่มเรดิโอกับวัตถุที่คุณสมบัติมีค่าบูลีน ฉันพยายามแสดงคำถามการสอบที่ดึงมาจากทรัพยากร $ 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 …

4
Rails: dependent =>: destroy VS: dependent =>: delete_all
ในคู่มือรางจะมีคำอธิบายเช่นนี้: วัตถุจะถูกทำลายนอกจากนี้หากพวกเขาเกี่ยวข้อง:dependent => :destroyและถูกลบหากพวกเขาเกี่ยวข้อง:dependent => :delete_all ถูกต้องเท่ห์ แต่อะไรคือความแตกต่างระหว่างการถูกทำลายและการลบ? ฉันลองทั้งคู่แล้วดูเหมือนจะทำแบบเดียวกัน

7
ตรวจสอบว่ามีการเปลี่ยนแปลงคุณสมบัติอะไรบ้างใน Rails after_save callback?
ฉันตั้งค่าการโทรกลับ after_save ในผู้สังเกตการณ์แบบจำลองของฉันเพื่อส่งการแจ้งเตือนเฉพาะเมื่อแอตทริบิวต์ที่เผยแพร่ของโมเดลนั้นเปลี่ยนจาก false เป็น true ตั้งแต่วิธีการเช่นการเปลี่ยนแปลง? มีประโยชน์เฉพาะก่อนที่แบบจำลองจะได้รับการบันทึกวิธีที่ฉันกำลัง (และไม่สำเร็จ) ในขณะนี้ที่พยายามทำมีดังนี้: 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 ไม่มีใครมีข้อเสนอแนะใด ๆ เกี่ยวกับวิธีที่ดีที่สุดในการจัดการสิ่งนี้โดยเฉพาะอย่างยิ่งการใช้ callbacks ผู้สังเกตการณ์แบบจำลอง (เพื่อไม่ให้เกิดมลภาวะรหัสควบคุม)

6
การเข้าถึงคุณสมบัติของ MVC จาก Javascript
ฉันมีโมเดลต่อไปนี้ซึ่งรวมอยู่ในโมเดลมุมมองของฉัน 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 ได้อย่างไร ฉันลองสิ่งนี้ แต่ได้ "ไม่ได้กำหนด" var floorplanSettings = …

8
ASP.NET MVC ใช่ / ไม่ใช่ปุ่มวิทยุที่มีขอบเขตอย่างแน่นหนารุ่น MVC
ไม่มีใครรู้วิธีผูกปุ่มตัวเลือก Yes / No กับคุณสมบัติบูลีนของ Strongly Typed Model ใน 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" …


3
จะโหลด json ลงใน angular.js ng-model ได้อย่างไร?
ฉันมีสิ่งที่ฉันคิดว่าน่าจะเป็นคำถามที่ชัดเจนมาก แต่ฉันหาคำตอบไม่ได้เลย ฉันแค่พยายามโหลดข้อมูล 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 CAN ใช้ตัวแปรฉันไม่สามารถโหลดทุกอย่างเป็นตัวแปรได้ดังนั้นฉันจึงสามารถใช้ a สำหรับแต่ละลูปได้ ดูเหมือนว่าจะเกี่ยวข้องกับ "$ Scope" ซึ่งมักจะอยู่ในไฟล์. js ปัญหาคือฉันไม่สามารถโหลดโค้ดจากหน้าอื่นเป็นไฟล์. js ทุกตัวอย่างของ Angular …

28
ไม่สามารถเขียนทับโมเดลเมื่อรวบรวมพังพอนแล้ว
ไม่แน่ใจว่าฉันทำอะไรผิดนี่คือ 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: …

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.