protected function create_conditions_from_keys(Model $model, $condition_keys = array(), $value_keys = array())
 {
     $condition_string = implode('_and_', $condition_keys);
     $condition_values = array_values($model->get_values_for($value_keys));
     // return null if all the foreign key values are null so that we don't try to do a query like "id is null"
     if (all(null, $condition_values)) {
         return null;
     }
     $conditions = SQLBuilder::create_conditions_from_underscored_string($condition_string, $condition_values);
     # DO NOT CHANGE THE NEXT TWO LINES. add_condition operates on a reference and will screw options array up
     if (isset($this->options['conditions'])) {
         $options_conditions = $this->options['conditions'];
     } else {
         $options_conditions = array();
     }
     return Utils::add_condition($options_conditions, $conditions);
 }