2013-09-30 34 views
0

我有一個內容類型(預算),它是一個自定義內容類型如何在「node/[nid]」頁面顯示編輯表單?

function budget_node_info() { 
    return array(
    'budget' => array(
     'base' => 'budget', 
     'name' => t('Budget'), 
     'description' => t('Represents individual budget.'), 
     'title_label' => t('Budget Name'), 
     'locked' => TRUE 
    ) 
); 
} 

我也有形式功能

function budget_form($node, $form_state) { 
    drupal_add_library('system', 'ui.tabs'); 
    drupal_add_library('budget', 'highcharts'); 
    drupal_add_js(drupal_get_path('module', 'budget') . '/js/budget_base.js'); 
    drupal_add_js(drupal_get_path('module', 'budget') . '/js/' . $node->type . '.js'); 

    $form = node_content_form($node, $form_state); 
    $config = variable_get($node->type); 

我要顯示的節點視圖頁面上編輯表單(我想從節點/ [nid] /編輯到節點/ [nid])顯示窗體?

我想未來:

function budget_node_view($node, $view_mode, $langcode){ 
    $node->content['edit-form'] = array(
    '#markup' => render(drupal_get_form('budget_form', $node)), 
    '#weight' => 10, 
); 
} 

也是我試圖

function budget_node_view($node, $view_mode, $langcode){ 
    $node->content['edit-form'] = array(
    '#markup' => render(budget_form($node, array())), 
    '#weight' => 10, 
); 
} 

第二版節目的形式,但沒有任何加載JS和CSS。

我在做什麼錯?

回答

1

我用function node_page_edit($node)和看起來像它的工作原理

function wp_budget_node_view($node, $view_mode, $langcode){ 
    module_load_include('inc', 'node', 'node.pages'); 
    $node->content['edit-form'] = array(
    '#markup' => render(node_page_edit($node)), 
    '#weight' => 10, 
); 
} 

也爲新的(空)形成,你應該使用node_add功能function node_add($type

相關問題