Remove name from subscriptions table

This commit is contained in:
Alphonse Paix
2025-09-16 15:20:32 +02:00
parent 8a977df948
commit 01b08bdc0d
8 changed files with 17 additions and 106 deletions

View File

@@ -1,5 +1,5 @@
use crate::{
domain::{NewSubscriber, SubscriberEmail, SubscriberName},
domain::{NewSubscriber, SubscriberEmail},
email_client::EmailClient,
startup::AppState,
};
@@ -82,7 +82,6 @@ impl IntoResponse for SubscribeError {
skip(messages, connection_pool, email_client, base_url, form),
fields(
subscriber_email = %form.email,
subscriber_name = %form.name
)
)]
pub async fn subscribe(
@@ -140,12 +139,11 @@ pub async fn insert_subscriber(
let subscriber_id = Uuid::new_v4();
let query = sqlx::query!(
r#"
INSERT INTO subscriptions (id, email, name, subscribed_at, status)
VALUES ($1, $2, $3, $4, 'pending_confirmation')
INSERT INTO subscriptions (id, email, subscribed_at, status)
VALUES ($1, $2, $3, 'pending_confirmation')
"#,
subscriber_id,
new_subscriber.email.as_ref(),
new_subscriber.name.as_ref(),
Utc::now()
);
transaction.execute(query).await?;
@@ -209,20 +207,14 @@ Click <a href=\"{}\">here</a> to confirm your subscription.",
#[derive(Debug, Deserialize)]
#[allow(dead_code)]
pub struct SubscriptionFormData {
name: String,
email: String,
email_check: String,
}
impl TryFrom<SubscriptionFormData> for NewSubscriber {
type Error = String;
fn try_from(value: SubscriptionFormData) -> Result<Self, Self::Error> {
let name = SubscriberName::parse(value.name)?;
if value.email != value.email_check {
return Err("Email addresses don't match.".into());
}
let email = SubscriberEmail::parse(value.email)?;
Ok(Self { name, email })
Ok(Self { email })
}
}