2011-12-08 10 views
7

कैसे मैं नया रिकार्ड बनाने के लिए ध्यान में रखते हुए एक बचाने के लिए और सूची में वापस बटन जोड़ सकते हैं के लिए एक बटन generator--? आम तौर पर, मुझे और बटन चाहिए इसलिए मैं एक सामान्य उत्तर की तलाश में हूं।Symfony व्यवस्थापक बचाने के लिए और वापस सूची

संपादित करें: डिफ़ॉल्ट जनरेटर मुझे दो बटन के साथ प्रदान करता है:

  1. बचाने
  2. बचाने के लिए और जोड़ने

मैं चाहता हूँ एक बटन जो saves and takes me back to the list है। और मैं एक कस्टम कार्रवाई के साथ एक कस्टम बटन भी चाहता हूँ।

मैं एक सूची कार्रवाई create कि कुछ इनपुट फ़ील्ड होने एक फार्म के लिए मुझे लगता है:

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

मुझे उम्मीद है कि यह अब स्पष्ट है। आप

config: 
     actions: ~ 
     fields: ~ 
     list: ~ 
     filter: ~ 
     form: ~ 
     edit: 
     actions: 
      _save: ~ 
      _list: ~ 
      save_and_back_to_list: ~ 
      my_other_action: ~ 
     new: 
     actions: 
      _save: ~ 
      _save_and_add: ~ 
      _list: ~ 
      save_and_back_to_list: ~ 
      my_other_action: ~ 

तो फिर तुम है /apps/myapplication/modules/mymodule/lib/mymoduleGeneratorHelper.class.php

public function linkToSaveAndBackToList($object, $params) 
    { 
    return '<li class="sf_admin_action_save_and_back_to_list"><input type="submit" value="'.__($params['label'], array(), 'sf_admin').'" name="save_and_back_to_list" /></li>'; 
    } 

    public function linkToMyOtherAction($object, $params) 
    { 
    return '<li class="sf_admin_action_my_other_action"><input type="submit" value="'.__($params['label'], array(), 'sf_admin').'" name="my_other_action" /></li>'; 
    } 

में अपने बटन बनाने के लिए अपने अनुकूलित सहायक कार्यों को जोड़ने में अब:

+0

क्या आप अपना प्रश्न बेहतर समझा सकते हैं? ** सहेजें ** और ** सूची में वापस ** बटन डिफ़ॉल्ट रूप से एक रूप में सक्षम हैं। आप और बटन कहां डालना चाहते हैं? क्या आपको कस्टम एक्शन के साथ बटन भी चाहिए? – macgyver

+0

@macgyver: मैंने सवाल अपडेट किया है। – prongs

उत्तर

8

आप generator.yml अपने save_and_back_to_list और अन्य कस्टम my_other_action कार्यों में जोड़ने के लिए पहले की है New और Edit फ़ॉर्म दोनों में दो सबमिट बटन प्राप्त करें।

अंततः आपको processForm(sfWebRequest $request, sfForm $form) फ़ंक्शन को ओवरराइड करना होगा, ताकि आप अपने नए सबमिट कार्यों को प्रबंधित करने के लिए /cache/dev/modules/autoMymodule/actions/actions.class.php में पा सकें। मुझे लगता है कि आपके create फ़ंक्शन व्यवस्थापक जनरेटर को ओवरराइड करता है।

मुझे आशा है कि मैं कुछ भी नहीं भूलूंगा।

+0

असल में मेरा 'create' डिफ़ॉल्ट रूप से ओवरराइड नहीं कर रहा है, मैं नाम को किसी और चीज़ में बदल दूंगा। लेकिन मुझे विचार मिला। – prongs

+0

'__' के लिए क्या खड़ा है? – prongs

+0

व्यवस्थापक जनरेटर द्वारा प्रदान किए गए कार्यों को अंडरस्कोर से शुरू होता है, लेकिन एक्शन क्लास में नहीं। मुझे लगता है कि इस सिम्फनी नियम के उद्देश्य से उपयोगकर्ता क्रियाओं से अलग होना है। – macgyver

संबंधित मुद्दे