ড্রুপাল 8 এ কীভাবে কাস্টম সত্তা তৈরি করবেন [বন্ধ]


10

ড্রুপাল 7 এ আমার একটি বড় ব্যক্তিগত প্রকল্প বিল্ড রয়েছে যার অনেকগুলি কাস্টম সত্তা রয়েছে। আমি প্রকল্পটি ড্রুপাল ৮-এ উন্নীত করতে চাই তবে সম্পূর্ণ নতুন করে লেখা ড্রুপাল ৮ কোর আমার পক্ষে কোনও ডকুমেন্টেশন ছাড়াই মাথা ফেরাতে খুব বড় (+ সিম্ফনি আমার কাছে একেবারেই অজানা, আমি কেবল একটি সাধারণ দ্রুপাল-কেবল লোক) ।

আমি কয়েকটি মূল মডিউল কোড দেখে তবে কোনও সাফল্য ছাড়াই একটি কাস্টম সত্তা তৈরির চেষ্টা করেছি।

আপনি আমাকে ড্রুপাল 8 (আমি একক একটিও সন্ধান করতে সক্ষম হইনি) এর কাস্টম সত্তা সম্পর্কে কিছু নিবন্ধের দিকে ইঙ্গিত করতে পারি বা আমাকে কিছু প্রাথমিক ধাপে ধাপে গাইড দিতে পারি?

ধন্যবাদ।

entities  8 

1
আপনি কতটা দূরে এসেছিলেন এবং ঠিক কোথায় আপনি লড়াই করছেন সে সম্পর্কে কিছুটা যুক্ত করতে আপনি প্রশ্নটি সম্পাদনা করতে পারেন? আপনার যে নির্দিষ্ট কোডটির সাথে সমস্যা হচ্ছে তা দেখতে আদর্শ হবে। কাস্টম সত্তা তৈরি করা কোনও ছোট কাজ নয় - এটি সাইটের ফর্ম্যাট এবং আপনার ভাল উত্তর পাওয়ার সম্ভাবনার জন্য উভয়ই খুব সম্ভবত একটি প্রশ্ন। দয়া করে মনে রাখবেন যে লিংক / টিউটোরিয়ালগুলির জন্য অনুরোধগুলি কেবলমাত্র সেই কারণেই এখানে বিশেষত অফ-টপিক। এটি টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো টুকরো সম্পর্কে আরও জিজ্ঞাসা করা। ধন্যবাদ
ক্লাইভ

অন্যদিকে, যদি আপনি কোনও সিম্ফনি না জানেন তবে সম্ভবত আপনার ডি 8 জ্ঞানটি ডি 8 এর সাথে প্রয়োগ করা কঠিন হয়ে পড়বে। বিষয়গুলি যথেষ্ট পরিমাণে পরিবর্তিত হয়েছে (যেমন আমি নিশ্চিত যে আপনি ইতিমধ্যে জানেন)। আমি আপনার যাত্রা শুরু করার আগে সিম্ফনি বইয়ের যতটা পড়ার তা দৃ strongly ়ভাবে সুপারিশ করব ; এই ধরণের গ্রাউন্ডিংটি স্থানান্তরকে অনেক মসৃণ করে তুলবে , বিশ্বাস করুন। অন্য একটিকে হিসাবে, আমি মূল যোগাযোগ মডিউলে বিভাগ এবং বার্তা সত্তাকে শিখার জন্য খুব ভাল সূচনা পয়েন্ট হতে দেখেছি
ক্লাইভ

@ ক্লাইভ ছাড়াও বৈধতা API এর দ্রুপাল 8 তে সত্ত্বা এপিআই রয়েছে সিমফোনির সাথে প্রায় কিছুই করার নেই, তাই আমি এটিকে প্রাসঙ্গিক বলে মনে করি না। অন্যথায় প্রশ্নটি খুব বিস্তৃত হওয়ার সাথে একমত, তবে আমি একটি ওভারভিউ দেওয়ার চেষ্টা করেছি, আরও নির্দিষ্ট প্রশ্নের উত্তর আরও বিশদে দেওয়া যেতে পারে। এবং এটি একটি সূচনা পয়েন্ট পেতে সহায়তা করে, কারণ আপনি D8 না জানলে এটি খুব স্পষ্ট নয়।
বারদির

@ বার্দিরের অর্থ ডি 7 -> ডি 8 সাধারণভাবে, সত্ত্বার জন্য বিশেষভাবে নয়। উদাহরণস্বরূপ, সিমফনি রাউটিং এবং পরিষেবাদি সম্পর্কে জেনে রাখা সাধারণ কোডকে সাধারণভাবে বোঝা অনেক সহজ করে তোলে। দুর্দান্তভাবে লেখার আপ, এখনই এই প্রশ্নটি আইএমওটি বন্ধ করার বিষয়ে ভাবারও কারণ নেই, এটি একটি মূল্যবান সম্পদ (এমনকি এটি বিস্তৃত দিকের একটি শিশু হলেও)
ক্লাইভ

উত্তর:


13

আমি এখানে সত্ত্বা এপিআই ডকুমেন্টেশনগুলিতে কাজ করছি: https://drupal.org/developing/api/entity

বিস্তারিতভাবে উত্তর দেওয়ার জন্য প্রশ্নটি খুব বড়, এবং এটি আপনার সামগ্রী বা কনফিগারেশন সত্ত্বাগুলি প্রয়োজন কিনা তার উপর নির্ভর করে। ধরে নিই যে আপনি সামগ্রী সত্ত্বা চান (ডাটাবেসে সঞ্চিত, ক্ষেত্রযোগ্য / সংশোধনযোগ্য / ..., উপরের লিঙ্কে বিশদ থাকতে পারে), আপনাকে এই জাতীয় কিছু করতে হবে, উপরের লিঙ্কযুক্ত ডকুমেন্টেশনগুলি অবশেষে এই মুহূর্তে টিউটোরিয়াল সহ প্রতিটি পদক্ষেপকে কভার করবে , এটি কেবল প্রথম পদক্ষেপগুলি জুড়ে covers

  1. একটি সত্তা শ্রেণি সরবরাহ করুন এবং সত্তা হিসাবে এটি প্রকাশ করতে প্রয়োজনীয় টীকা যুক্ত করুন।
  2. প্রয়োজনীয় সারণী সরবরাহ করুন, আপনার ইতিমধ্যে আপনার 7.x স্কিমা থাকলে আপনার খুব বেশি পরিবর্তন করতে হবে না, তবে আপনার সত্তার কোনও ভাষা থাকতে পারে / অনুবাদযোগ্য হতে পারে তবে আপনি একটি ইউইড এবং সম্ভবত ল্যাংকোড কলাম যুক্ত করতে চান। পদক্ষেপে লিঙ্কিত নোডের উদাহরণটি দেখুন যদি আপনি কিছু বেস ক্ষেত্র (বৈশিষ্ট্য) অনুবাদযোগ্য বা সংশোধনযোগ্য করতে চান তবে আপনাকে বর্তমানে প্রয়োজনীয় টেবিলগুলি নিজেরাই সরবরাহ করতে হবে।
  3. আপনার বেসফিল্ড ডেফিনিশনস () পদ্ধতিতে বেস ক্ষেত্রের সংজ্ঞা প্রদান করুন। । নোট করুন যে এই কাজগুলি https://drupal.org/node/2047229 (অ্যারে থেকে ক্লাসে) এ পরিবর্তিত হবে ।
  4. প্রয়োজনীয় প্রাক / পোস্ট সংরক্ষণ / লোড / মুছে ফেলা পদ্ধতিগুলি বাস্তবায়িত করুন যদি আপনার কাস্টম যুক্তি থাকে যা হওয়া প্রয়োজন যেমন উদাহরণস্বরূপ কোনও সত্তা সংরক্ষণ করার আগে (পরিবর্তিত টাইমস্ট্যাম্প আপডেট করার মতো)।
  5. যদি আপনার অ-তুচ্ছ অ্যাক্সেস যুক্তি থাকে এবং চেকঅ্যাক্সেস () এবং চেকক্রিয়েটএ্যাক্সেস () পদ্ধতিগুলি ওভাররাইড করে থাকেন তবে অ্যাক্সেস কন্ট্রোলার প্রয়োগ করুন বা আপনার টীকায় অ্যাডমিন_প্রেমিশন নির্দিষ্ট করুন যদি আপনার কাছে কেবলমাত্র একক অনুমতি থাকে যা সম্পূর্ণ অ্যাক্সেসের অনুমতি দেয়।
  6. প্রযুক্তিগতভাবে আপনার সত্তা শ্রেণীর জন্য একটি ইন্টারফেস সরবরাহ করার প্রয়োজন নেই (যেমন নোডের জন্য নোডইনটারফেস) যাতে আপনার বেস ক্ষেত্রগুলির জন্য দরকারী (সাধারণত / সেট / isSomething ()) পদ্ধতি অন্তর্ভুক্ত থাকে, যাতে আপনি ইন্টারফেসে ইঙ্গিতটি টাইপ করতে পারেন এবং এই পদ্ধতিগুলির জন্য অটো-সম্পূর্ণ পান।

আপনার যা প্রয়োজন তার উপর নির্ভর করে আরও প্রয়োজনীয় পদক্ষেপগুলি যেমন প্রয়োজনীয় ফর্মগুলি সংজ্ঞায়িত করা, সম্ভবত কোনও রেন্ডার কন্ট্রোলার ইত্যাদি রয়েছে তবে আপনার আরও তথ্যের প্রয়োজন হলে সেগুলি সম্ভবত পৃথক প্রশ্ন হওয়া উচিত।

মন্তব্য:

  • কনফিগার সংস্থাগুলি মূলত অনুরূপ, কনফিগার স্টোরেজ নিয়ন্ত্রক ব্যবহার করার প্রয়োজন বাদে ( https://drupal.org/node/2119905 এটি আরও সহজ করে দেবে), আপনাকে টেবিল স্কিমগুলি সংজ্ঞায়িত করার দরকার নেই (অবশ্যই) তবে আপনাকে সরবরাহ করতে হবে একটি কনফিগারেশন স্কিমা ফাইল, উদাহরণস্বরূপ, বিভাগীয় শব্দভাণ্ডার বা নোড প্রকারের জন্য দেখুন।
  • সামগ্রী সত্তার তাদের বেস ক্ষেত্রগুলি সর্বজনীন বা সুরক্ষিত বৈশিষ্ট্য হিসাবে সংজ্ঞায়িত করা হয় না, পরিবর্তে তারা মান এবং ক্ষেত্রের বৈশিষ্ট্যে স্বয়ংক্রিয়ভাবে পরিচালিত হয়। গেট () / সেট () অথবা সংশ্লিষ্ট যাদু পদ্ধতির মাধ্যমে সেগুলি অ্যাক্সেস করুন। ($ নোড-> শিরোনামটি 'node-> get (' শিরোনাম ')) এর সমান।
  • ডকুমেন্টেশন সাহায্য খুব স্বাগত হবে। আমি যে সামগ্রী / কাঠামোটি পেতে চাই তার জন্য একটি বেসিক রূপরেখা তৈরি করেছি, তাই কেবল একটি নতুন পৃষ্ঠা তৈরি করুন এবং শুরু করুন উদাহরণস্বরূপ, আমি কনফিগার্ড সত্ত্বাগুলির সরলকরণের টিউটোরিয়ালগুলি সম্পর্কে আগ্রহী, এখানে ইতিমধ্যে এখানে একটি আছে প্রস্তুত হয়ে গেলে সত্তার ডকুমেন্টেশনে স্থানান্তরিত হবে: https://drupal.org/node/1809494
  • কোরটিতে প্রচুর পরিমাণে সামগ্রীর সত্তা বাস্তবায়ন রয়েছে, যদি আপনি কাজের উদাহরণগুলি দেখতে চান: নোড, ব্যবহারকারী, শব্দ, মন্তব্য, কাস্টমব্লক, ... যেমন পদক্ষেপ 1 এ লিঙ্ক করা হয়েছে, আপনি সর্বদা সরবরাহ করেছেন সত্তার প্রকারগুলি খুঁজে পেতে পারেন সত্তা নেমস্পেসের একটি মডিউল।
  • @ ফাগো এই সপ্তাহান্তে ড্রুপালক্যাম্প ভিয়েনায় সবেমাত্র সত্তা এপিআই সম্পর্কে একটি উপস্থাপনা দিয়েছিল , আমি এখানে এবং আরও কি লিখেছি তা অনেকগুলি জুড়ে।

1
Drupal কোড জেনারেটরের বেশ উপকারী - >> github.com/Chi-teck/drupal-code-generator
Rémy

1
drupalconsole.com - এছাড়াও একটি ভাল সহায়ক (বয়লারপ্লেট কোড উত্পন্ন করার জন্য একটি সরঞ্জাম, ড্রুপাল সাথে ইন্টারঅ্যাক্ট এবং ডিবাগ করার জন্য একটি সরঞ্জাম))
দুধভস্কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.