﻿
{"id":9156,"date":"2018-08-22T10:19:46","date_gmt":"2018-08-22T10:19:46","guid":{"rendered":"http:\/\/www.gencayyildiz.com\/blog\/?p=9156"},"modified":"2018-08-22T10:19:46","modified_gmt":"2018-08-22T10:19:46","slug":"mongodb-semalarda-validation-islemleri","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/mongodb-semalarda-validation-islemleri\/","title":{"rendered":"MongoDB &#8211; \u015eemalarda Validation \u0130\u015flemleri"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Merhaba,<\/p>\n<p>Bu i\u00e7eri\u011fimizde; NoSQL temelli veritaban\u0131 olan MongoDB \u00fczerinde Node.js ile veritaban\u0131 i\u015flemleri icra ederken kulland\u0131\u011f\u0131m\u0131z \u015femalarda validasyon i\u015flemlerinin nas\u0131l uygulanabilece\u011fini inceliyor olaca\u011f\u0131z.<\/p>\n<p>Hi\u00e7 vakit kaybetmeden a\u015fa\u011f\u0131daki modeli ele al\u0131rsak;<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nconst mongoose = require(&quot;mongoose&quot;);\r\n\r\nmodule.exports = mongoose.model(&quot;Employees&quot;, new mongoose.Schem a({\r\n    _id: Number,\r\n    name: {\r\n        type: String,\r\n        minlength: 4, \/\/Minumum karakter say\u0131s\u0131,\r\n        maxlength: 15, \/\/Maximum karakter say\u0131s\u0131\r\n        required: true \/\/Bu alan bo\u015f ge\u00e7ilemez\r\n    }\r\n}));\r\n<\/pre>\n<p>g\u00f6r\u00fcld\u00fc\u011f\u00fc \u00fczere &#8220;name&#8221; alan\u0131n\u0131n bo\u015f ge\u00e7ilemeyece\u011fiyle birlikte minimum ve maximum de\u011ferleri belirtilmi\u015f bulunmaktad\u0131r.<br \/>\n<a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri.png\" alt=\"MongoDB - \u015eemalarda Validation \u0130\u015flemleri\" width=\"683\" height=\"81\" class=\"aligncenter size-full wp-image-9157\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri.png 683w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri-300x36.png 300w\" sizes=\"auto, (max-width: 683px) 100vw, 683px\" \/><\/a><br \/>\nG\u00f6rd\u00fc\u011f\u00fcn\u00fcz \u00fczere validasyonlardan herhangi birine tak\u0131n\u0131ld\u0131\u011f\u0131 zaman yukar\u0131daki gibi do\u011frulama uyar\u0131s\u0131 ile kar\u015f\u0131la\u015fmaktay\u0131z. E\u011fer ki uyar\u0131y\u0131 anlaml\u0131 mesaj haline getirmek istiyorsan\u0131z a\u015fa\u011f\u0131daki gibi \u00e7al\u0131\u015fma ger\u00e7ekle\u015ftirmeniz yeterlidir.<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nconst mongoose = require(&quot;mongoose&quot;);\r\n\r\nmodule.exports = mongoose.model(&quot;Employees&quot;, new mongoose.Schem a({\r\n    _id: Number,\r\n    name: String,\r\n    surName: {\r\n        type: String,\r\n        maxlength: &#x5B;20, &quot;'{PATH}' alan\u0131na verilen de\u011fer '{VALUE}' en fazla '{MAXLENGTH}' karakter alabilir.&quot;],\r\n        minlength: &#x5B;4, &quot;'{PATH}' alan\u0131na verilen de\u011fer '{VALUE}' en fazla '{MINLENGTH}' karakter alabilir.&quot;],\r\n        required: &#x5B;true, &quot;'{PATH}' alan\u0131 bo\u015f ge\u00e7ilemez.&quot;]\r\n    }\r\n}));\r\n<\/pre>\n<p>Dikkat ederseniz validasyona de\u011fer olarak atanan dizi i\u00e7erisinde ilk eleman validasyon de\u011ferini tan\u0131mlarken, ikincisi ilgili validasyona tak\u0131l\u0131nd\u0131\u011f\u0131 zaman verilecek mesaj\u0131 ifade etmektedir. Burada {PATH}, {VALUE}, {MAXLENGTH} ve {MINLENGTH} anahtar s\u00f6zc\u00fckleri mevcuttur. Bu keywordlerin ne i\u015fe yarad\u0131\u011f\u0131n\u0131 s\u0131ras\u0131yla ele al\u0131rsak e\u011fer;<\/p>\n<ul>\n<li>\n<strong>{PATH}<\/strong><br \/>\nDo\u011frulamadan ge\u00e7emeyen alan\u0131n ad\u0131n\u0131 getirir.\n<\/li>\n<li>\n<strong>{VALUE}<\/strong><br \/>\nDo\u011frulamadan ge\u00e7emeyen alana verilen de\u011feri getirir.\n<\/li>\n<li>\n<strong>{MAXLENGTH}<\/strong><br \/>\nMaximum karakter s\u0131n\u0131r\u0131n\u0131 getirir.\n<\/li>\n<li>\n<strong>{MINLENGTH}<\/strong><br \/>\nMinimum karakter s\u0131n\u0131r\u0131n\u0131 getirir.\n<\/li>\n<\/ul>\n<p><a href=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri-1.png\" alt=\"MongoDB - \u015eemalarda Validation \u0130\u015flemleri\" width=\"698\" height=\"78\" class=\"aligncenter size-full wp-image-9159\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri-1.png 698w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2018\/08\/MongoDB-\u015eemalarda-Validation-\u0130\u015flemleri-1-300x34.png 300w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/a><\/p>\n<p>Say\u0131sal tipteki alanlarda ise a\u015fa\u011f\u0131daki gibi validasyon uygulanabilmektedir;<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nconst mongoose = require(&quot;mongoose&quot;);\r\n\r\nmodule.exports = mongoose.model(&quot;Employees&quot;, new mongoose.Schem a({\r\n    _id: Number,\r\n    name: String,\r\n    surName: String,\r\n    age: {\r\n        type: Number,\r\n        min: 5, \/\/Minumum de\u011fer\r\n        max: 15 \/\/Maximum de\u011fer\r\n    }\r\n}));\r\n<\/pre>\n<p>ya da<\/p>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\nconst mongoose = require(&quot;mongoose&quot;);\r\n\r\nmodule.exports = mongoose.model(&quot;Employees&quot;, new mongoose.Schem a({\r\n    _id: Number,\r\n    name: String,\r\n    surName: String,\r\n    age: {\r\n        type: Number,\r\n        min: &#x5B;5, &quot;'{PATH}' alan\u0131n\u0131n minumum de\u011feri {MIN} olabilir.&quot;], \/\/Minumum de\u011fer\r\n        max: &#x5B;15, &quot;'{PATH}' alan\u0131n\u0131n maximum de\u011feri {MAX} olabilir.&quot;] \/\/Maximum de\u011fer\r\n    }\r\n}));\r\n<\/pre>\n<p>Sonraki yaz\u0131lar\u0131mda g\u00f6r\u00fc\u015fmek \u00fczere&#8230;<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar&#8230;<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Merhaba, Bu i\u00e7eri\u011fimizde; NoSQL temelli veritaban\u0131 olan MongoDB \u00fczerinde Node.js ile veritaban\u0131 i\u015flemleri icra ederken kulland\u0131\u011f\u0131m\u0131z \u015femalarda validasyon i\u015flemlerinin nas\u0131l uygulanabilece\u011fini inceliyor olaca\u011f\u0131z. Hi\u00e7 vakit kaybetmeden a\u015fa\u011f\u0131daki modeli ele al\u0131rsak; const mongoose = require(&quot;mongoose&quot;);&#46;&#46;&#46;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":8971,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2539,2145,2538],"tags":[2581,2583,2582],"class_list":["post-9156","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mongodb","category-node-js","category-nosql","tag-mongodb-sema-validation","tag-nosql-sema-validation","tag-sema-validation"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/9156","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=9156"}],"version-history":[{"count":3,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/9156\/revisions"}],"predecessor-version":[{"id":9161,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/9156\/revisions\/9161"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media\/8971"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=9156"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=9156"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=9156"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}