ในหนึ่งในแบบฟอร์มของฉันฉันกำลังพยายามตั้งค่า$form_state['redirect']
เพื่อให้แบบฟอร์มไปยังปลายทางนั้นหลังจากที่ผู้ใช้คลิกปุ่มการกระทำปุ่มใดปุ่มหนึ่ง
ถ้าฉันตรวจสอบ$form_state['redirect']
ทั้งก่อนและหลังฉันเพิ่มการเปลี่ยนเส้นทางมันเป็นโมฆะก่อนและหลังมีอาร์เรย์ที่เหมาะสม นี่คือวิธีที่ฉันตั้งค่าการเปลี่ยนเส้นทาง:
$form_state['redirect'] = array(
'my/custom/path/' . $nid,
array('query' => drupal_get_destination()),
);
ฉันต้องการสงวนปลายทางจากแบบฟอร์มที่ผู้ใช้กำลังดูไปยังเส้นทางถัดไป (นั่นคือเหตุผลที่ฉันกำลังโทรหาdrupal_get_destination()
ซึ่งจะส่งกลับอาร์เรย์'destination' => 'some/path/here'
ภายใน
ดูเหมือนว่าเนื่องจากมีปลายทางอยู่ในเส้นทางของฟอร์มปัจจุบันแล้วการเปลี่ยนเส้นทางไปยังปลายทางนั้นไม่ว่าสิ่งที่ฉันใส่ไว้ในแบบฟอร์มของฉันจะส่ง handler (ดูรหัสด้านบน) ฉันได้ลองใช้ drupal_goto () และนั่นก็ไม่ได้เปลี่ยนเส้นทางผู้ใช้