#substrate
Вопрос:
let container_returned_data = container::Module::<T>::check_for_app_name(amp;app_id,amp;instruction_name); //container_returned_data is tuple contains (bool,Vec<(Vec<u8>,Vec<u8>)>)
if container_returned_data.0{
let d = container_returned_data.1[0].1.clone();
let data_str:amp;str = from_utf8(amp;d).unwrap();
let data_str2 = data_str.to_string();
debug::error!(target:"runner","{:?}",amp;data_str2);
// debug::error!(target:"norm","{:?}",amp;data_str2);
Self::function_executer(data_str);
//now implement the ail_v2 function inside this.
unsafe{
Self::deposit_event(Event::FunctionsReceived(FUNCTION.clone()));
}
}
Я использовал core::str::from_utf8, но он не преобразует байты в массив
Я должен выполнить следующие действия
let querys_ = query_.replace("n","").trim().trim_end().to_string();
let l_data_querys:Vec<amp;str> = querys_.trim().trim_end().split("<<-").collect();
Комментарии:
1. попробуйте amp;d или d.as_slice() . Никакой Веревочки.
2. ОШИБКА токио-среда выполнения-рабочий бегун: «[70, 117, 110, 99, 116, 105, 111, 110, 32, 97, 98, 99, 32, 45, 62, 62, 32, 67, 82, 69, 65, 84, 69, 32, 83, 84, 79, 82, 65, 71, 69, 32, 99, 100, 101, 59, 32, 60, 60, 45, 32, 67, 82, 69, 65, 84, 69, 32, 83, 84, 79, 82, 65, 71, 69, 32, 65, 66, 67, 83, 59]» это возвращает мне это
3. пусть d1 = d.as_slice(); пусть data_str:amp;str = from_utf8(amp;d1).разверните(); // пусть data_str2 = data_str.to_string(); отладка::ошибка! (цель:»бегун»,»{:?}»,data_str); @Кларкли
4. Вы не должны использовать строку во время выполнения, так как строки не кодируются в масштабе, вместо этого следует использовать Vec<u8>. Проверить docs.substrate.io/v3/advanced/scale-codec для получения дополнительной информации о масштабе-кодек