Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
overwrite — CVE-2022-46689 का उपयोग करके iOS पर फ़ॉन्ट ओवरराइट करने के लिए प्रूफ-ऑफ-कॉन्सेप्ट ऐप। | Kitploit
उपकरण/GitHubGitHub/daviszhto/overwrite
आईओएस सुरक्षाभेद्यता विश्लेषणशोषणपेनिट्रेशन टेस्टिंगमोबाइल सुरक्षा
GitHubdaviszhto/overwrite

overwrite

CVE-2022-46689 का उपयोग करके iOS पर फ़ॉन्ट ओवरराइट करने के लिए प्रूफ-ऑफ-कॉन्सेप्ट ऐप।

रिपॉजिटरी देखें
अभी अभीअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

लारावेल नोवा फ्लेक्सिबल कंटेंट

लारावेल नोवा के लिए एक आसान और पूर्ण फ्लेक्सिबल फील्ड, बार-बार और लचीले फील्ड समूहों के लिए उपयुक्त।

लारावेल नोवा फ्लेक्सिबल कंटेंट क्रियान्वयन में

त्वरित शुरुआत

यहाँ एक बहुत ही संक्षिप्त गाइड है जो आपको जल्द से जल्द शुरू करने में मदद करेगा। पूर्ण दस्तावेज़ देखें https://whitecube.github.io/nova-flexible-content पर

इंस्टॉल करें

root@kitploit:~
composer require whitecube/nova-flexible-content

उपयोग

एक फ्लेक्सिबल फील्ड फ़ील्ड समूहों को पुनरावर्ती और क्रमबद्ध तरीके से प्रबंधित करने की अनुमति देता है। लारावेल नोवा के लिए मौजूदा कुछ समाधानों के विपरीत, इस पर कोई प्रतिबंध नहीं है कि आप इन समूहों के अंदर किन फ़ील्ड का उपयोग कर सकते हैं। इसका मतलब है कि आप सभी लारावेल नोवा फ़ील्ड प्रकारों का उपयोग कर सकते हैं, साथ ही समुदाय द्वारा बनाए गए किसी भी फ़ील्ड का भी।

लेआउट जोड़ना

एक लेआउट फ़ील्ड के एक समूह का प्रतिनिधित्व करता है जिसे फ्लेक्सिबल फील्ड के अंदर दोहराया जा सकता है। आप जितने चाहें उतने लेआउट जोड़ सकते हैं। यदि केवल एक लेआउट परिभाषित किया गया है, तो फील्ड एक साधारण रिपीटर की तरह व्यवहार करेगा, और अधिक लेआउट जोड़ने पर आपको एक फ्लेक्सिबल कंटेंट मिलेगा। दोनों अवधारणाएं वर्डप्रेस के एसीएफ प्लगइन में उनके चचेरे भाइयों के समान हैं।

आप अपने फ्लेक्सिबल फील्ड पर निम्न विधि का उपयोग करके लेआउट जोड़ सकते हैं:

root@kitploit:~
 addLayout(string $title, string $name, array $fields)

$name पैरामीटर का उपयोग फील्ड के मान में चयनित लेआउट को संग्रहीत करने के लिए किया जाता है। इसे समझदारी से चुनें, आप शायद इसका उपयोग अपने एप्लिकेशन में लेआउट की पहचान करने के लिए करेंगे।

root@kitploit:~
use Whitecube\NovaFlexibleContent\Flexible;

/**
 * Get the fields displayed by the resource.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return array
 */
public function fields(Request $request)
{
    return [
        // ...

        Flexible::make('Content')
            ->addLayout('Simple content section', 'wysiwyg', [
                Text::make('Title'),
                Markdown::make('Content')
            ])
            ->addLayout('Video section', 'video', [
                Text::make('Title'),
                Image::make('Video Thumbnail', 'thumbnail'),
                Text::make('Video ID (YouTube)', 'video'),
                Text::make('Video Caption', 'caption')
            ])
    ];
}

फ्लेक्सिबल लेआउट का उदाहरण

बटन लेबल को अनुकूलित करना

आप डिफ़ॉल्ट "Add layout" बटन का टेक्स्ट इस प्रकार बदल सकते हैं:

root@kitploit:~
Flexible::make('Content')
    ->button('Add something amazing!');

कुछ अद्भुत जोड़ें

दृश्यों में फ्लेक्सिबल मानों का उपयोग करना

यदि आप Laravel 6 और उससे नीचे का उपयोग कर रहे हैं, या कास्ट का उपयोग नहीं करना चाहते हैं, तो कृपया HasFlexible ट्रेट के साथ अपने मॉडल पर एक एक्सेसर का उपयोग करें।

Laravel 7 टेबल पर कस्टम कास्ट लाता है, और फ्लेक्सिबल कंटेंट फील्ड उनके लिए एकदम सही उपयोग मामला है। फील्ड अपने मूल्यों को एक एकल JSON स्ट्रिंग के रूप में संग्रहीत करता है, जिसका अर्थ है कि इस स्ट्रिंग को आपके एप्लिकेशन में उपयोग करने से पहले पार्स करने की आवश्यकता है। यह इस पैकेज में FlexibleCast वर्ग का उपयोग करके आसानी से किया जा सकता है:

root@kitploit:~
namespace App;

use Illuminate\Database\Eloquent\Model;
use Whitecube\NovaFlexibleContent\Value\FlexibleCast;

class MyModel extends Model
{
    protected $casts = [
        'flexible-content' => FlexibleCast::class
    ];
}

डिफ़ॉल्ट रूप से, FlexibleCast वर्ग बुनियादी Layout उदाहरणों को एकत्र करेगा। यदि आप लेआउट को कस्टम लेआउट उदाहरणों में मैप करना चाहते हैं, तो यह भी संभव है। पहले, php artisan flexible:cast MyFlexibleCast चलाकर एक कस्टम फ्लेक्सिबल कास्ट बनाएं। यह फ़ाइल को App\Casts निर्देशिका में बनाएगा।

फिर अपने कस्टम लेआउट वर्गों को उपयुक्त कुंजियों पर आसानी से मैप करें:

root@kitploit:~
namespace App\Casts;

class MyFlexibleCast extends FlexibleCast
{
    protected $layouts = [
        'wysiwyg' => \App\Nova\Flexible\Layouts\WysiwygLayout::class,
        'video' => \App\Nova\Flexible\Layouts\VideoLayout::class,
    ]
}

यदि आपको अधिक नियंत्रण की आवश्यकता है, तो आप इसके बजाय getLayoutMappings विधि को ओवरराइड कर सकते हैं।

लेआउट संग्रह

FlexibleCast कास्ट और HasFlexible ट्रेट द्वारा लौटाए गए संग्रह मूल Illuminate\Support\Collection का विस्तार करते हैं। ये कस्टम लेआउट संग्रह एक find(string $name) विधि प्रदर्शित करते हैं जो दिए गए लेआउट $name वाले पहले लेआउट को लौटाता है।

लेआउट उदाहरण

लेआउट एक प्रकार के नकली मॉडल हैं। वे Laravel के HasAttributes ट्रेट का उपयोग करते हैं, जिसका अर्थ है कि आप लेआउट की विशेषताओं के लिए एक्सेसर और म्यूटेटर परिभाषित कर सकते हैं। इसके अलावा, निम्न विधियों का उपयोग करके लेआउट के गुणों तक पहुँचना भी संभव है:

name()

लेआउट का नाम लौटाता है।

title()

लेआउट का शीर्षक (जैसा कि Nova में दिखाया गया है) लौटाता है।

key()

लेआउट की अद्वितीय कुंजी (लेआउट का अद्वितीय पहचानकर्ता) लौटाता है।

आगे बढ़ना

फ्लेक्सिबल कंटेंट फील्ड का उपयोग करते समय, आप जल्दी ही कुछ उपयोग मामलों का सामना करेंगे जहाँ ऊपर वर्णित मूल बातें पर्याप्त नहीं हैं। इसलिए हमने पैकेज को एक विस्तार योग्य तरीके से विकसित किया है, जिससे फील्ड और इसके आउटपुट में कस्टम व्यवहार और/या क्षमताओं को आसानी से जोड़ा जा सके।

कस्टम लेआउट वर्ग

कभी-कभी, addLayout परिभाषाएँ काफी लंबी हो सकती हैं, या हो सकता है कि आप चाहते हों कि वे अन्य Flexible फील्ड के साथ साझा की जाएँ। इसका उत्तर अपने लेआउट को उसके स्वयं के वर्ग में निकालना है। इस पर अधिक जानकारी के लिए दस्तावेज़ देखें।

पूर्वनिर्धारित प्रीसेट वर्ग

पुन: प्रयोज्य लेआउट वर्गों के अलावा, आप अपने फ्लेक्सिबल फील्ड के लिए Preset वर्ग बनाकर एक कदम आगे बढ़ सकते हैं। ये आपको अपने पूरे फ्लेक्सिबल फील्ड को कहीं भी पुन: उपयोग करने की अनुमति देते हैं। वे आपके फ्लेक्सिबल फील्ड को गतिशील बनाना भी आसान बनाते हैं, उदाहरण के लिए यदि आप सशर्त रूप से लेआउट जोड़ना चाहते हैं। और अंतिम लेकिन कम नहीं, उनका एक अतिरिक्त लाभ यह भी है कि वे आपके Nova संसाधन वर्गों को साफ करते हैं, यदि आपके फ्लेक्सिबल फील्ड में बहुत सारी addLayout परिभाषाएँ हैं। इस पर अधिक जानकारी के लिए दस्तावेज़ देखें।

कस्टम रिज़ॉल्वर वर्ग

डिफ़ॉल्ट रूप से, फील्ड आपके मॉडल की तालिका पर एक JSON कॉलम का लाभ उठाता है। कुछ मामलों में, आप वास्तव में इस फील्ड का उपयोग करना चाहेंगे, लेकिन किसी कारण से JSON विशेषता सही रास्ता नहीं है। उदाहरण के लिए, आप मानों को किसी अन्य तालिका में संग्रहीत करना चाह सकते हैं (जिसका अर्थ है कि आप पारंपरिक BelongsToMany या HasMany फील्ड के बजाय फ्लेक्सिबल कंटेंट फील्ड का उपयोग करेंगे)। चिंता न करें, हमने आपको कवर किया है!

अपना स्वयं का रिज़ॉल्वर वर्ग बनाकर फील्ड को बताएं कि अपनी सामग्री को कैसे संग्रहीत और पुनर्प्राप्त करना है, जिसमें मूल रूप से केवल दो सरल विधियाँ होती हैं: get और set। इस पर अधिक जानकारी के लिए दस्तावेज़ देखें।

nova-page के साथ उपयोग

हो सकता है कि आपने हमारे अन्य पैकेजों में से एक के बारे में सुना हो, nova-page, जो एक Nova टूल है जो स्थिर पृष्ठों जैसे कि "हमारे बारे में" पृष्ठ (या समान) को व्यक्तिगत रूप से मॉडल घोषित किए बिना संपादित करने की अनुमति देता है। अक्सर, फ्लेक्सिबल कंटेंट फील्ड काम आता है। चिंता न करें, दोनों पैकेज एक साथ अच्छी तरह से काम करते हैं! पहले एक nova page टेम्पलेट बनाएं और टेम्पलेट के फील्ड में एक फ्लेक्सिबल कंटेंट जोड़ें।

जैसा कि दस्तावेज़ में समझाया गया है, आप अपने ब्लेड दृश्यों में {{ Page::get('attribute') }} का उपयोग करके nova-page की स्थिर सामग्री तक पहुँच सकते हैं। इस तरह फ्लेक्सिबल कंटेंट का अनुरोध करने पर, यह एक कच्ची JSON स्ट्रिंग लौटाता है जो फ्लेक्सिबल कंटेंट का वर्णन करती है, जो निश्चित रूप से बहुत उपयोगी नहीं है। इसके बजाय, आप अपने पेज टेम्पलेट्स पर बस Whitecube\NovaFlexibleContent\Concerns\HasFlexible ट्रेट लागू कर सकते हैं, जो Page::flexible('attribute') फेसेड विधि को उजागर करेगा और फ्लेक्सिबल कंटेंट के रूपांतरण का ध्यान रखेगा।

root@kitploit:~
namespace App\Nova\Templates;

// ...
use Whitecube\NovaFlexibleContent\Concerns\HasFlexible;

class Home extends Template
{
    use HasFlexible;

    // ...
}

💖 प्रायोजन

यदि आप अपने उत्पादन अनुप्रयोगों में इस पैकेज पर निर्भर हैं, तो हमें प्रायोजित करने पर विचार करें! यह हमें वह करने में मदद करने का सबसे अच्छा तरीका है जो हमें पसंद है: बेहतरीन ओपन सोर्स सॉफ्टवेयर बनाना।

योगदान

बेझिझक बदलाव सुझाएं, नई सुविधाओं का अनुरोध करें या स्वयं बग ठीक करें। हमें यकीन है कि अभी भी बहुत सारे सुधार किए जा सकते हैं, और हम उपयोगी पुल अनुरोधों को मर्ज करके बहुत खुश होंगे।

धन्यवाद!

इकाई परीक्षण

नई सुविधा जोड़ते समय या बग ठीक करते समय, कृपया संबंधित इकाई परीक्षण जोड़ें। परीक्षणों का वर्तमान सेट सीमित है, लेकिन जोड़ा गया प्रत्येक इकाई परीक्षण पैकेज की गुणवत्ता में सुधार करेगा।

composer test कॉल करके PHPUnit चलाएं।

❤️ के साथ ओपन सोर्स के लिए बनाया गया

Whitecube में हम अपने दैनिक कार्य के भाग के रूप में बहुत सारे ओपन सोर्स सॉफ्टवेयर का उपयोग करते हैं। इसलिए जब हमारे पास कुछ वापस देने का अवसर होता है, तो हम बहुत उत्साहित होते हैं!

हमें उम्मीद है कि आप हमारे इस छोटे से योगदान का आनंद लेंगे और यदि आप इसे अपनी परियोजनाओं में उपयोगी पाते हैं तो हमसे सुनना पसंद करेंगे। अधिक अपडेट के लिए हमें Twitter पर फॉलो करें!

टूल डाउनलोड करें