In https://api.backdropcms.org/api/backdrop/1/search/system_settings_form it mentions how you can specify a different config file for some of the form elements/values via '#config'
. What do you do though if you want to save to the same top-level '#config'
, but to a different setting?
So say that your form element is $form['my']['cool']['element'] = array( ... );
but you want the setting to be saved as my_cool_element
in the .json? ...is a custom submit handler the only option in that case?
So basically, I understand that you can do this:
$primary_config = config('mymodule.settings');
$secondary_config = config('mymodule.moar.settings');
$form = array('#config' => 'mymodule.settings');
$form['first_setting'] = array( ... );
$form['second_setting'] = array(
...
'#config' => 'mymodule.moar.settings',
...
);
...and that this saves first_setting
in mymodule.settings.json
, while second_setting
is saved in mymodule.moar.settings.json
.
What I need to do though is something like this:
$config = config('mymodule.settings');
$form = array('#config' => 'mymodule.settings');
$form['first_setting'] = array( ... );
$form['second_setting'] = array(
...
'#config_setting' => 'call_this_something_else',
...
);
...so both settings will be saved in the same mymodule.settings.json
file. The first one as "first_setting"
, while the second one as "call_this_something_else"
. So instead of this:
{
"_config_name": "mymodule.settings",
"_module": "mymodule",
"first_setting": 123,
"second_setting": "abc",
}
...I would instead want to have this:
{
"_config_name": "mymodule.settings",
"_module": "mymodule",
"first_setting": 123,
"call_this_something_else": "abc",
}
Recent comments
The horrors of cut/paste! Brilliant, thanks.
SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value:
The issue could be related to the Emojis in the body field. Can you check the Status report (admin/reports/status) for the item MySQL Database 4-byte UTF-8 support? To display Emojis, 4-byte UTF...
SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value:
@argiepiano, thanks a lot! For Webform it will be always "webform_client_form_NID", correct?
How to add Webform ID to Captcha module?